Spring Boot アノテーション@RestControllerでクラスのインスタンスを返す

構文
1.public @interface GetMapping
@GetMapping は @RequestMapping(method = RequestMethod.GET) のショートカットとして機能する合成アノテーションです。

2.@RestController
@RestControllerはWebページ用のコントローラとしては使用しません。
リクエストを受け、JSONやXMLを返すAPIサーバー用として使用します。

操作方法
1.Userクラスの定義

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
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クラスにデータをセットして返します。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
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のオブジェクトの中に値が生成されます

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
{
"id": 2002,
"name": "tokyo"
}
{ "id": 2002, "name": "tokyo" }
{
    "id": 2002,
    "name": "tokyo"
}

 

Spring Boot

Posted by arkgame