跳到主要内容

@ResponseBody

DeepSeek V3 中英对照 @ResponseBody

你可以在一个方法上使用 @ResponseBody 注解,通过 HttpMessageConverter 将返回值序列化到响应体中。以下清单展示了一个示例:

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

@ResponseBody 也支持在类级别上使用,在这种情况下,它会被所有的控制器方法继承。这就是 @RestController 的效果,它不过是一个标记了 @Controller@ResponseBody 的元注解。

Resource 对象可以用于返回文件内容,将提供的资源的 InputStream 内容复制到响应的 OutputStream 中。请注意,InputStream 应该通过 Resource 句柄延迟获取,以便在将其复制到响应后可靠地关闭它。如果您为此目的使用 InputStreamResource,请确保使用按需的 InputStreamSource 构造它(例如,通过检索实际 InputStream 的 lambda 表达式)。

你可以将 @ResponseBody 与响应式类型一起使用。有关更多详细信息,请参阅异步请求响应式类型

你可以使用 MVC 配置 中的 消息转换器 选项来配置或自定义消息转换。

你可以将 @ResponseBody 方法与 JSON 序列化视图结合使用。详情请参阅 Jackson JSON