1.在spring4.0之后,引入了@RestController这个注解。这个注解相当于把@ResponseBody + @Controller合在一起。
2.前端在通过表单提交和a标签请求后端的时候只需要注解@Controller即可,但是在通过Ajax请求后端的时候,还需要增加一个@ResponseBody注解,但是在spring4.0之后,无论是表单还是a标签还是Ajax请求后端,都只要@RestController一个注解即可。
3.@ResponseBody能将对象自动转换为json字符串,所以以往在Ajax返回时直接返回一个对象就行,而在表单和a标签请求是返回需要调用JSON.toJSONString(object)这个方法将对象转换为json字符串。
4.在spring4.0后,所有请求在@RestController之下,直接返回对象即可,再也不需要转换为json字符串了。
注意:
使用了@RestController之后,所有返回的数据他都会把你解析为json字符串,所以如果是前后台不分开式开发(即返回的是跳转页面名字)时,不能使用@RestContoller,不然只会在原来页面中显式你要跳转页面的名字!!!
如图所示: