@RequestBody 的使用方法和注意事项
使用@RequestBody注解时,是用于接收Content-Type为application/json类型的请求,数据类型是JSON:{"aaa":"111","bbb":"222"}
不使用@RequestBody注解时,可以接收Content-Type为application/x-www-form-urlencoded类型的请求所提交的数据,数据格式:aaa=111&bbb=222 ,form表单提交以及jQuery的.post()方法所发送的请求就是这种类型。
很多时候,我们用 Ajax 提交数据时,也是使用这种方式。例如 JQuery 和 QWrap 的 Ajax,Content-Type 默认值都是「application/x-www-form-urlencoded;charset=utf-8」。
JQuery的$.ajax(url,[settings])
1.默认的ContentType的值为:application/x-www-form-urlencoded; charset=UTF-8
此格式为表单提交格式,数据为key1=value1&key2=value2的格式
2.虽然ajax的data属性值格式为:{key1:value1,key2:value2},但最后会转为key1=value1&key2=value2的格式提交到后台
3.如果ajax要和springmvc交互,key1=value1&key2=value2的格式,后台springmvc只需要定义对象或者参数就行了,会自动映射。
4.如果springmvc的参数有@RequestBody注解(接收json**字符串**格式数据),ajax必须将date属性值转为json字符串,不能为json对象(js对象,会自动转为key=value形式)。并且,修改contentType的值为:application/json; charset=UTF-8,这样加了@RequestBody注解的属性才能自定映射到值
总结:概括:@RequstBody作用是将content-Type为application/json的request请求中的json参数转换成java对象,使用时需要前台将content-Type设置为application/json,对于普通的表单提交和一些比较老的框架(比如easy-UI),提交信息时content-Type不是application/json而是application/x-www-form-urlencoded,所以后台不加@RequstBody也能自动识别出来
@RequestBody 的使用方法和注意事项相关推荐
- Dubbo+zookeeper使用方法以及注意事项
Dubbo+zookeeper使用方法以及注意事项 最近在一个项目中想做一个数据库查询的服务,目的是将数据库查询这块从程序中脱离出来,形成一个公共的服务平台,大家都可以调用,经过考虑决定选用Dubbo ...
- 【PC工具】200412更新百度网盘下载工具——最终最简单百度网盘下载方法及注意事项...
今天有朋友在群里问会员账号,上次好像说过,这种公用的会员账号基本下载量都超了,同样也限速,所以这种账号一般都用来找资源. 百度网盘这个题材也来回来去发过好几个工具了,太麻烦不说,老这么道高一尺魔高一丈 ...
- 【PC工具】200324更新百度网盘下载工具——最新百度网盘下载工具使用方法及注意事项...
今天(200324)更新一个大牛的个人项目pdown,大家可以收藏一下备用(为啥是备用呢,细心的小伙伴应该发现我把标题中的高速两个字去掉了). 先发项目地址:没错还是那个神奇的网站(大神奇人聚集的地方 ...
- 【PC工具】更新百度网盘高速下载工具——亿寻使用方法及注意事项
之前分享的工具和方法大部分都不好用了,我也就不保留了,有需要的朋友可以翻看之前的历史文章. 今天分享一个目前比较主流的下载工具"亿寻",可能很多朋友都用过了,这里我简单说一下使用方 ...
- php获取表单$_files,PHP中$_FILES的使用方法及注意事项说明
$_FILES:经由 HTTP POST 文件上传而提交至脚本的变量,类似于旧数组$HTTP_POST_FILES 数组(依然有效,但反对使用)详细信息可参阅 POST方法上传 $_FILES数组内容 ...
- 佳能g3800故障灯说明书_汽车仪表灯的使用方法以及注意事项
能够准确地识别仪表盘上的数据是每个驾驶员的必要能力,但是如今,汽车技术日新月异,大量先进技术已应用于我们的爱车上.汽车仪表盘上的指示灯和中控台上的指示灯按钮变得越来越繁杂,准确识别这些抽象按钮已不再是 ...
- 电脑安全注意事项_松下洗衣机维修方法及注意事项
阅读本文前,请您先点击上面的"蓝色字体",再点击"关注",这样您就可以继续免费收到文章了.每天都有分享,完全是免费订阅,请放心关注. 注:本文转载自网络,不代表 ...
- go面向对象编程:结构体struct详解、结构体实例的创建方式、结构体之间的转换(type取别名的使用)、方法的注意事项及与函数的区别
入门示例 package main import "fmt" //定义老师结构体,将老师中的各个属性 统一放入结构体中管理: type Teacher struct{//变量名字大 ...
- 动物之森服务器维护时间,动物之森怎么更改时间 动物森友会改时间方法及注意事项...
动物之森怎么更改时间?在动物之森中有些任务需要等待很长时间才能成功触发,为了节省时间很多玩家都会用穿越的方法投机取巧,也就是更改NS主机的时间.下面就是动物森友会改时间方法及注意事项了,大家一起来看看 ...
- linux gfs原理,Linux GFS 配置方法及注意事项
Linux GFS(Global File System)是实现为多个访问节点或者主机能同时读写的分布式文件系统. 现测试基于RedHat的GFS简单 配置方法及注意事项实验记录如下: 1.GFS ...
最新文章
- 美国地铁列车相撞可能由设备陈旧引发(组图)
- 如何使用cmd进入打印机选项_怎样用命令行方式添加打印机端口? (已解决)
- AWS Ubuntu安装可视化操作桌面和VS Code,Code Server
- 小学数学里的必胜问题,在扑克牌游戏里的应用
- ubuntu kvm 部署安装 快照
- 前端学习(2306):react之组件使用
- S5PV210裸机之外部中断
- C 创建基本图表 Chart Controls
- CNN反向传播算法过程
- oracle:10g下载地址(转载)
- express 写接口
- win2K/win2003终端服务器超出最大允许连接数解决之道全攻略
- 两人分组问题:显示In function 'int main()'求大佬解惑
- 利用线性回归预测波士顿房价
- html5红外遥控,自制红外遥控开关详细步骤(两款自制红外遥控开关方法) - 全文...
- 大人物只认得大人物……
- 石化能源行业工业互联网智能工厂解决方案
- Symbian UIQ简介
- Ubuntu 微信 linux版最新可用——UOS魔改版
- nginx 动态添加模块
热门文章
- html php简单程序,PHP_php简单的分页程序,[code]html head me - phpStudy
- 机器学习 Machine Learning- 吴恩达Andrew Ng 第21~25课总结
- length()函数_奇怪的Haskell实验——length的实现是?
- php $stomp write byte message,PHP通过Stomp协议与,ActiveMQ,通信所遇到的问题
- java求两个时间相差月_java计算两个时间相差几个月
- concat oracle 多个字符串_史上最全的MySQL 字符串函数,赶紧收藏!!
- Kaggle Future Sales“”竞赛 XGB_model_final
- gradientDescent----吴恩达机器学习作业
- 基础集合论 第一章 5 偶集
- 解析几何 | 吕子根 设三平行平面 $\pi_i:\ Ax+By+Cz+D_i=0\,(i=1,2,3),L,M,N$ 依次是平面 $\pi_1,\pi_2,\pi_3$ 上的任意点,求 $\tria