Spring Boot项目中的@RestController和@Controller有何区别?
时间: 2024-06-18 09:05:12 浏览: 265
spring boot 的常用注解使用小结
5星 · 资源好评率100%
在Spring Boot项目中,@RestController和@Controller的主要区别是它们的返回值。@RestController用于处理RESTful请求,它会直接返回JSON或XML等数据格式。而@Controller则用于处理传统的页面跳转请求,它一般返回ModelAndView对象,其中包含了视图名和数据模型等信息。
具体来说,@RestController注解的方法会将方法返回的对象序列化成JSON或XML等格式,并将其写入到HTTP响应中,而@Controller注解的方法则会返回一个ModelAndView对象,该对象包含了要跳转的视图名和要渲染的数据模型。
另外,@RestController注解还可以省略@ResponseBody注解,因为@RestController已经默认将方法的返回值作为HTTP响应内容。
阅读全文