此版本仍在开发中,尚未被视为稳定版。如需最新稳定版本,请使用 Spring Framework 7.0.6spring-doc.cadn.net.cn

@ResponseBody

你可以在方法上使用 @ResponseBody 注解,通过 HttpMessageWriter 将返回值序列化到响应体中。以下示例展示了如何实现这一点:spring-doc.cadn.net.cn

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

@ResponseBody 也支持在类级别使用,此时它会被所有控制器方法继承。这正是 @RestController 的作用,它本质上只是一个元注解,同时标记了 @Controller@ResponseBodyspring-doc.cadn.net.cn

@ResponseBody 支持响应式类型,这意味着你可以返回 Reactor 或 RxJava 类型,并将其产生的异步值渲染到响应中。 有关更多详细信息,请参阅 流式传输JSON 渲染spring-doc.cadn.net.cn

您可以将 @ResponseBody 方法与 JSON 序列化视图结合使用。 详情请参见Jackson JSONspring-doc.cadn.net.cn

您可以使用HTTP 消息编解码器 选项来配置或自定义消息的写入,该选项属于WebFlux 配置spring-doc.cadn.net.cn