当前位置: 首页 > news >正文

3.7、@ResponseBody 和 @RestController

  本部分示例代码见此项目的 mvc 分支下的 RespBodyController.java 和 TheRestController.java


① 使用注解@ResponseBody映射响应体

  注解@ResponseBody@RequestBody很像。这个注解可以放到一个方法中,指示返回类型应该直接被写进HTTP响应体中(而不是放到一个Model中、也不是翻译为一个视图名)。例如:

@GetMapping("/something")
@ResponseBody
public String helloWorld() { return "Hello World"; }

  上面的示例会返回文本 “Hello World”,并把它写到HTTP响应流中。

  就像@RequestBody,Spring 使用HttpMessageConverter把返回的对象转换到请求体中。更多关于这些转换器的消息,参见消息转换器.

② 使用注解@RestController创建 REST 控制器

  一个非常常见的场景是让控制器实现 REST API,因此只服务于 JSON、XML 或者自定义的 MediaType 内容。为了方便,避免在所有的@RequestMapping方法上加上@ResponseBody注解,你可以用@RestController注解你的控制器类.

  @RestController 是一个模板注解,它合并了@ResponseBody@Controller。不仅如此,它还为你的控制器赋予了更多的意义,在未来的发行版本中也将包含更多语义。

  就像常规的@Controllers@RestController可以由@ControllerAdvice或者@RestControllerAdvice Bean 协助。详情见用 @ControllerAdvice 和 @RestControllerAdvice 通知控制器”一节

相关文章:

  • C 语言 格式化输出输入
  • ls输出显示命令总结
  • 指针
  • 第二周 词频统计
  • java之struts2的action的创建方式
  • linux安装openssl、swoole等扩展的具体步骤
  • CSS 分享
  • VS2017 常用快捷键
  • Vue.js源码(2):初探List Rendering
  • 如何把文字转换成语音,文字转语音转换器能帮你
  • 面试官:你接受免费加班吗?程序员这样怼回去,网友:老铁没毛病
  • fseek的使用
  • assert()函数用法
  • Python Day29
  • java socket之多人聊天室Demo
  • 《Java编程思想》读书笔记-对象导论
  • 【mysql】环境安装、服务启动、密码设置
  • 【挥舞JS】JS实现继承,封装一个extends方法
  • create-react-app做的留言板
  • django开发-定时任务的使用
  • Docker 1.12实践:Docker Service、Stack与分布式应用捆绑包
  • es6--symbol
  • extjs4学习之配置
  • github指令
  • HomeBrew常规使用教程
  • Idea+maven+scala构建包并在spark on yarn 运行
  • JavaScript实现分页效果
  • Linux编程学习笔记 | Linux IO学习[1] - 文件IO
  • MySQL用户中的%到底包不包括localhost?
  • Rancher-k8s加速安装文档
  • React16时代,该用什么姿势写 React ?
  • VUE es6技巧写法(持续更新中~~~)
  • windows-nginx-https-本地配置
  • 百度小程序遇到的问题
  • 一道面试题引发的“血案”
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • ​学习一下,什么是预包装食品?​
  • #前后端分离# 头条发布系统
  • $(function(){})与(function($){....})(jQuery)的区别
  • (4)STL算法之比较
  • (Mirage系列之二)VMware Horizon Mirage的经典用户用例及真实案例分析
  • (MonoGame从入门到放弃-1) MonoGame环境搭建
  • (poj1.2.1)1970(筛选法模拟)
  • (pytorch进阶之路)CLIP模型 实现图像多模态检索任务
  • (官网安装) 基于CentOS 7安装MangoDB和MangoDB Shell
  • (排序详解之 堆排序)
  • (数据结构)顺序表的定义
  • (转)VC++中ondraw在什么时候调用的
  • .net core webapi 大文件上传到wwwroot文件夹
  • .net操作Excel出错解决
  • .NET教程 - 字符串 编码 正则表达式(String Encoding Regular Express)
  • .NET命令行(CLI)常用命令
  • ?php echo $logosrc[0];?,如何在一行中显示logo和标题?
  • @property python知乎_Python3基础之:property
  • [ACTF2020 新生赛]Include