@RestController、@Controller、@ResponseBody 小鱼儿 2021-05-12 11:55 534阅读 0赞 1.在spring4.0之后,引入了@RestController这个注解。这个注解相当于把@ResponseBody + @Controller合在一起。 ![这里写图片描述][SouthEast] 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,不然只会在原来页面中显式你要跳转页面的名字!!! 如图所示: ![这里写图片描述][SouthEast 1] ![这里写图片描述][SouthEast 2] ![这里写图片描述][SouthEast 3] ![这里写图片描述][SouthEast 4] [SouthEast]: /images/20210511/2ed26829b0c64f94bfb33decb976e86d.png [SouthEast 1]: /images/20210511/f983c4e9b7fc483fbaaea4d2e25d6b96.png [SouthEast 2]: /images/20210511/8d4b423673084b469d9f2fea542f54f9.png [SouthEast 3]: /images/20210511/cf6e4665b46b4924a4a7ad1a0167879b.png [SouthEast 4]: /images/20210511/600bf52a393448469d05184936572939.png
还没有评论,来说两句吧...