最新の安定バージョンについては、Spring Framework 7.0.2 を使用してください! |
@ResponseBody
メソッドで @ResponseBody アノテーションを使用して、HttpMessageConverter を介して戻り値をレスポンス本体に直列化できます。次のリストに例を示します。
Java
Kotlin
@GetMapping("/accounts/{id}")
@ResponseBody
public Account handle() {
// ...
}
@GetMapping("/accounts/{id}")
@ResponseBody
fun handle(): Account {
// ...
}
@ResponseBody はクラスレベルでもサポートされます。この場合、すべてのコントローラーメソッドによって継承されます。これは @RestController の効果であり、これは @Controller および @ResponseBody でマークされたメタアノテーションにすぎません。
ファイルコンテンツに対して Resource オブジェクトを返すことができ、提供されたリソースの InputStream コンテンツをレスポンス OutputStream にコピーします。レスポンスにコピーされた後、確実に閉じるためには、InputStream を Resource ハンドルで遅延取得する必要があることに注意してください。このような目的で InputStreamResource を使用する場合は、オンデマンド InputStreamSource (実際の InputStream を取得するラムダ式など) を使用して構築するようにしてください。
MVC 構成のメッセージコンバーターオプションを使用して、メッセージ変換を構成またはカスタマイズできます。
@ResponseBody メソッドを JSON 直列化ビューと組み合わせることができます。詳細については、Jackson JSON を参照してください。