在Spring中@RestController的作用等同于@Controller + @ResponseBody。
所以想要理解@RestController注解就要先了解@Controller和@ResponseBody注解。
@Controller之前已经有过了解了,这里就讲@ResponseBody
- @Responsebody 注解表示该方法的返回的结果直接写入 HTTP 响应正文(ResponseBody)中,一般在异步获取数据时使用;
- 在使用 @RequestMapping 后,返回值通常解析为跳转路径,加上 @Responsebody 后返回结果不会被解析为跳转路径,而是直接写入HTTP 响应正文中。
例如,异步获取 json 数据,加上 @Responsebody 注解后,就会直接返回 json 数据。
- @RequestBody 注解则是将 HTTP 请求正文插入方法中,使用适合的 HttpMessageConverter 将请求体写入某个对象。
@RequestMapping("/login") @ResponseBody public Person login(@RequestBody Person person) { // 将请求中的 datas 写入 Person 对象中 return person; // 不会被解析为跳转路径,而是直接写入 HTTP 响应正文中 }
总结:@RestController的作用,在方法上加了@RestController方法返回的不再是路径,返回的“值” 直接输出在前端页面body上。
标签:HTTP,SpringMVC,跳转,写入,ResponseBody,注解,RestController From: https://www.cnblogs.com/mo-de/p/16855780.html