@ResponseBody

メソッドで @ResponseBody アノテーションを使用して、HttpMessageWriter を介して戻り値をレスポンス本体に直列化できます。次の例は、その方法を示しています。

  • Java

  • Kotlin

@GetMapping("/accounts/{id}")
@ResponseBody
public Account handle() {
	// ...
}
@GetMapping("/accounts/{id}")
@ResponseBody
fun handle(): Account {
	// ...
}

@ResponseBody はクラスレベルでもサポートされます。この場合、すべてのコントローラーメソッドによって継承されます。これは @RestController の効果であり、これは @Controller および @ResponseBody でマークされたメタアノテーションにすぎません。

@ResponseBody はリアクティブ型をサポートします。つまり、Reactor 型または RxJava 型を返し、それらが生成する非同期値をレスポンスにレンダリングさせることができます。詳細については、ストリーミングおよび JSON レンダリングを参照してください。

@ResponseBody メソッドを JSON 直列化ビューと組み合わせることができます。詳細については、Jackson JSON を参照してください。

WebFlux 構成HTTP メッセージコーデックオプションを使用して、メッセージの書き込みを構成またはカスタマイズできます。