Spring Boot アノテーション@RestControllerでクラスのインスタンスを返す
構文
1.public @interface GetMapping
@GetMapping は @RequestMapping(method = RequestMethod.GET) のショートカットとして機能する合成アノテーションです。
2.@RestController
@RestControllerはWebページ用のコントローラとしては使用しません。
リクエストを受け、JSONやXMLを返すAPIサーバー用として使用します。
操作方法
1.Userクラスの定義
package com.arkgame.study.demo;
public class User {
private int id
private String name;
// setterとgetterは省略
}
package com.arkgame.study.demo;
public class User {
private int id
private String name;
// setterとgetterは省略
}
package com.arkgame.study.demo; public class User { private int id private String name; // setterとgetterは省略 }
2.アノテーション@RestControllerでUserクラスにデータをセットして返します。
package com.arkgame.study.demo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class MainController {
@GetMapp生成
public User obout{
//インスタンスを生成
User user = new User();
user.setId(2002);
user.setName("tokyo");
//インスタンスを返す
return user;
}
package com.arkgame.study.demo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class MainController {
@GetMapp生成
public User obout{
//インスタンスを生成
User user = new User();
user.setId(2002);
user.setName("tokyo");
//インスタンスを返す
return user;
}
package com.arkgame.study.demo; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class MainController { @GetMapp生成 public User obout{ //インスタンスを生成 User user = new User(); user.setId(2002); user.setName("tokyo"); //インスタンスを返す return user; }
実行結果
JSONのオブジェクトの中に値が生成されます
{
"id": 2002,
"name": "tokyo"
}
{
"id": 2002,
"name": "tokyo"
}
{ "id": 2002, "name": "tokyo" }