Spring MVC Restful 风格的接口流程是什么样的呢?

在 RESTful 架构中,通常返回的是 JSON 或 XML,不再是一个完整的页面。

其中很重要的两个注解:@RestController 相当于 @Controller 和 @ResponseBody 的结合。当在一个类上使用 @RestController 时,它会告诉 Spring 这个类中所有方法的返回值都应该被直接写入 HTTP 响应体中,而不再被解析为视图。

@ResponseBody 可以用在方法级别,作用相同。它标志着该方法的返回值将作为响应体内容,Spring 会跳过视图解析的步骤。

HttpMessageConverter 是实现 RESTful 风格的关键。当 Spring 检测到 @ResponseBody 注解时,它会使用 HttpMessageConverter 来将 Controller 方法返回的 Java 对象序列化成指定的格式,如 JSON。

默认情况下,如果类路径下有 Jackson 库,Spring Boot 会自动配置 MappingJackson2HttpMessageConverter 来处理 JSON 的转换。相应的,对于带有 @RequestBody 注解的方法参数,它也会用这个转换器将请求体中的 JSON 数据反序列化成 Java 对象。

相关推荐
daidaidaiyu6 小时前
Spring IOC 源码学习 声明式事务的入口点
java·spring
森林里的程序猿猿8 小时前
Spring Aop底层源码实现(一)
java·后端·spring
攒了一袋星辰9 小时前
SequenceGenerator高并发有序顺序号生成中间件 - 架构设计文档
java·后端·spring·中间件·架构·kafka·maven
大傻^10 小时前
LangChain4j Spring Boot Starter:自动配置与声明式 Bean 管理
java·人工智能·spring boot·spring·langchain4j
yhole10 小时前
springboot 修复 Spring Framework 特定条件下目录遍历漏洞(CVE-2024-38819)
spring boot·后端·spring
大傻^10 小时前
Spring AI 2.0 MCP 协议实战:Model Context Protocol SDK 与多服务器编排
服务器·人工智能·spring
l软件定制开发工作室11 小时前
Spring开发系列教程(34)——打包Spring Boot应用
java·spring boot·后端·spring·springboot
0xDevNull11 小时前
Spring Boot 循环依赖解决方案完全指南
java·开发语言·spring
随风,奔跑11 小时前
Spring MVC
java·后端·spring
弦有三种苦难11 小时前
CCF-202412-T3缓存模拟90分
java·开发语言·spring