@RestController
@RestController = @Controller @ResponseBody.等号の右側の 2 人の同志が、@RestController の意味を理解するためにいくつかの文を簡単に紹介します:
@Controller は現在のクラスになります。変更されたクラスは SpringBoot IOC コンテナに挿入されるため、クラスが配置されているプロジェクトの実行時にクラスがインスタンス化されます。もちろん、これにはセマンティック効果もあります。つまり、このクラスはコントローラーとして機能します。
@ResponseBody この関数は、要するに、このクラスのすべての API インターフェイスによって返されるデータを指します。対応するメソッドは Map またはその他の Object を返します。これは Json 文字列の形式でクライアントに返されます。試してみました。返された型が String の場合でも、String のままです。
@RestController @RequestMapping("test") public class SampleController { @GetMapping public Map testGet() { return new HashMap<string>(){{ put("name", "springboot"); }}; } @GetMapping(path = "str") public String testGetStr() { return "OK"; } }</string>
コードのこの部分は、マップに対しては JSON 文字列を返しますが、文字列に対しては引き続き文字列を返します。
#When @RestController は @Controller に置き換えられ、/test の戻り値は次のようになります:
以上が@RestController アノテーションを使用して SpringBoot で http リクエストを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。