写在前面

@RequestBody和@ResponseBody是Spring中的两个注解,简单来说:
@RequestBody,用于将前端发送来的JSON/XML格式的数据转化为JAVABEAN对象;
@ResponseBody,用于将后端的JAVABEAN对象对象转化为JSON格式的数据返回给前端。

SpringBoot - @PathVariable/@RequestParam/@RequestBody注解使用详解

@RequestBody

(A). 用于读取请求的body数据,使用系统默认配置的HttpMessageConverter 进行解析,然后把相应的数据映射到方法的参数上。一般情况下来说常用来处理application/json类型的内容,或者粗鲁的说:将请求体中的JSON数据绑定到方法对应的BEAN上。
(B). @RequestBody与@RequestParam()可以同时使用,@RequestBody最多只能有一个,而@RequestParam()可以有多个。
(C).注解在控制器方法的形参前,用于接收JSON/XML格式封装成的JAVABEAN对象或者集合,如果是XML格式的数据需要添加额外的依赖。如果方法的形参没有该注解的话,JAVABEAN对象或者集合则无法接收JSON/XML格式的数据。
(D).当前端页面传参时,需要手动设置 contentType: “application/json”,默认是 “application/x-www-form-urlencoded”。

@PostMapping
public Result add(@Validated @RequestBody User user) {}

@ResponseBody

(A). 标注在控制器的方法上,用于将方法的返回值以JSON/XML的格式返回给客户端。
(B). 如果没有该注解,将返回一个ModelAndView给客户端,即返回视图。
(C).Spring中的新增注解:@RestController,@RestController = @Controller + @ResponseBody,如果一个Controller类添加了@RestController注解,那么该Controller类中的所有方法都相当于添加了@ResponseBody 注解。
(D).当控制器使用@RestController标注时,控制器中的所有方法无需再添加@ResponseBody 注解;当控制器使用@Controller标注时,控制器中的所有方法则需要添加@ResponseBody注解。

SpringBoot - @RequestBody、@ResponseBody的使用场景相关推荐

  1. spring mvc @RequestBody @ResponseBody 解析流程

    一.此接口测试用例 @RequestMapping(value = "/save_user",produces = "application/xml;charset=ut ...

  2. @RequestBody, @ResponseBody 注解详解

    简介: @RequestBody 作用: i) 该注解用于读取Request请求的body部分数据,使用系统默认配置的HttpMessageConverter进行解析,然后把相应的数据绑定到要返回的对 ...

  3. springboot @RequestBody 接收字符串

    前言 springboot 2.1.1.RELEASE @RequestBody 接收字符串 @RequestMapping(method = {RequestMethod.POST})public ...

  4. SpringMVC中使用@RequestBody,@ResponseBody注解实现Java对象和XML/JSON数据自动转换)

    Spring3.1开始使用新的HandlerMapping 和 HandlerAdapter 来支持@Contoller 和@RequestMapping注解处理:处理器映射RequestMappin ...

  5. Spring MVC之@RequestBody, @ResponseBody 详解

    引言: 接上一篇文章讲述处理@RequestMapping的方法参数绑定之后,详细介绍下@RequestBody.@ResponseBody的具体用法和使用时机: 简介: @RequestBody 作 ...

  6. SpringBoot RequestBody ajax提交对象

    前端实现: var student = {"name":1,"age":2,"score":3 }; $.ajax({ url:" ...

  7. springboot中aop的应用场景_自然语言处理工具包 HanLP在 Spring Boot中的应用

    概 述 HanLP 是基于 Java开发的 NLP工具包,由一系列模型与算法组成,目标是普及自然语言处理在生产环境中的应用.而且 HanLP具备功能完善.性能高效.架构清晰.语料时新.可自定义的特点, ...

  8. springboot~拦截器的使用场景

    在用户登陆之后,我们一般会把用户登陆的状态和相关信息进行存储,把对应的token返回到客户端进行存储,下次请求过来时,系统可以通过token拿到当前这个用户的相关信息,这是授权通常的作法,而有时一些业 ...

  9. @responseBody和@RequestBody

    @responseBody和@RequestBody @responseBody把后台pojo转换json对象,返回到页面. @RequestBody接受前台json数据,把json数据自动封装jav ...

最新文章

  1. Ubuntu make menuconfig与make xconfig
  2. C语言再学习 -- 字符串和字符串函数
  3. 关于测试一个接口的面试题
  4. 解决透视变换后图片信息丢失的问题
  5. 迷你计算机笔记本,迷你笔记本电脑我选择了它,性能不错还超轻便携
  6. quidway secpath下搭建DHCP服务器01
  7. Android下 使用百度地图sdk
  8. 抖音运营详细教程,算法解读、平台规则、热门涨粉......丨国仁网络
  9. css 彩虹色渐变色,纯CSS实现颜色渐变效果(包含环形渐变、线性渐变、彩虹效果等)...
  10. 0成本开发一个外卖返利领劵小程序|外卖返利系统
  11. Dataframe两个表格合并
  12. 【Java】注解入门
  13. bcm4322linux驱动下载,苹果MAC BOOK PRO 5.5 2009年中 安装fedora26——broadcom BCM4322 无线驱动在fedora上的安装...
  14. 第二章补充____微分中值定理及导数应用
  15. 风云防火“强”为你打造出坚实系统(转)
  16. Mysql引擎的知识
  17. lumaQQ移植到Android之重构篇
  18. 2021玉林芳草中学高考成绩查询,「分数线」2020年成都玉林中学招生录取分数线...
  19. 《交互设计的艺术-ios7拟物化到扁…
  20. duoyinzi_pinyin

热门文章

  1. 最好的编程语言(如何不再担忧,爱上代码)
  2. 呼叫中心客服系统业务场景应用价值
  3. 如何向您的WordPress用户发送短信
  4. 什么是架构师?架构师应该具备什么样的能力?
  5. js操作excel全攻略
  6. 点阵图像与矢量图像的计算机记录原理,点阵图像矢量化的研究
  7. Unity3D横版过关游戏(一)
  8. zabbix 5.0监控网络设备
  9. 有哪些项目能够自助对外服务器,企业租用服务器有什么用途?
  10. 知识图谱问答系列文档(一)——思知机器人简介