前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >@RestController VS @Controller

@RestController VS @Controller

作者头像
happyJared
发布2019-09-24 16:12:39
4660
发布2019-09-24 16:12:39
举报
文章被收录于专栏:happyJaredhappyJared

1. Controller 返回一个页面

单独使用 @Controller 而不加 @ResponseBody的话,一般使用在要返回一个视图的情况,这种情况属于比较传统的 Spring MVC 应用,对应于前后端不分离的情况。

SpringMVC 传统工作流程

2. @RestController 返回 JSON 或 XML 形式数据

@RestController只返回对象,对象数据直接以 JSON 或 XML 形式写入 HTTP 响应中,这种情况属于 Resttful Web 服务,也是目前日常开发所接触的最常用的情况(前后端分离)。

SpringMVC+RestController

3. @Controller +@ResponseBody 返回JSON 或 XML 形式数据

在 Spring4 之前开发 RESTful Web 服务的话,需要使用 @Controller 并结合 @ResponseBody 注解,也就是说 @Controller + @ResponseBody = @RestController(Spring4 之后新加的注解)。

@ResponseBody 注解的作用,是将 Controller 方法返回的对象,通过适当的转换器转换为指定的格式之后,写入到 HTTP 响应对象的 body 中,通常用来返回 JSON 或者 XML 数据,返回 JSON 数据的情况比较多。

Spring3.x MVC RESTful Web 服务工作流程

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.09.21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档