ホームページ >Java >&#&チュートリアル >SpringBoot http における @RestController の役割は何ですか

SpringBoot http における @RestController の役割は何ですか

王林
王林転載
2023-05-20 15:31:06834ブラウズ

@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(){ {

put("name", "springboot");

}};

}

@GetMapping(path = "str")

public String testGetStr() { return "OK"; }}

コードのこの部分は、Map には JSON String を返し、String には String を返します

When @ After RestControllerが @Controller に置き換えられると、/test の戻り値は次のようになります。

エラー レポートからわかるように、@Controller が変更されると、Spring は View (つまり C MVC では)、返されるのは Map です。

以上がSpringBoot http における @RestController の役割は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。