@requestBody注解的使用
1、@requestBody注解常用来处理content-type不是默认的application/x-www-form-urlcoded编码的内容,比如说:application/json或者是application/xml等。一般情况下来说常用其来处理application/json类型。
2、
通过@requestBody可以将请求体中的JSON字符串绑定到相应的bean上,当然,也可以将其分别绑定到对应的字符串上。
例如说以下情况:
$.ajax({
url:"/login",
type:"POST",
data:'{"userName":"admin","pwd","admin123"}',
content-type:"application/json charset=utf-8",
success:function(data){
alert("request success ! ");
}
});
@requestMapping("/login")
public void login(@requestBody String userName,@requestBody String pwd){
System.out.println(userName+" :"+pwd);
}
这种情况是将JSON字符串中的两个变量的值分别赋予了两个字符串,但是呢假如我有一个User类,拥有如下字段:
String userName;
String pwd;
那么上述参数可以改为以下形式:@requestBody User user 这种形式会将JSON字符串中的值赋予user中对应的属性上
需要注意的是,JSON字符串中的key必须对应user中的属性名,否则是请求不过去的。
3、
在一些特殊情况@requestBody也可以用来处理content-type类型为application/x-www-form-urlcoded的内容,只不过这种方式
不是很常用,在处理这类请求的时候,@requestBody会将处理结果放到一个MultiValueMap<String,String>中,这种情况一般在
特殊情况下才会使用,
例如jQuery easyUI的datagrid请求数据的时候需要使用到这种方式、小型项目只创建一个POJO类的话也可以使用这种接受方式
最新文章
- javascript 逻辑操作符
- jquery.min.map 404 (Not Found)出错的原因及解决办法
- String、String.valueOf、toString 它们三者的区别总结
- 12款高质量的响应式 HTML5/CSS3 网站模板
- js005-引用类型
- phpmyadmin 链接远程mysql
- SPRING + THYMELEAF 配置
- 国内首家VR虚拟现实主题公园即将在北京推出
- java web sql注入测试(1)---概念概述
- HTTP传递数据的几种方法
- 第五篇:python高级之面向对象高级
- Xcode Build Setting Reference
- Remove Invalid Parentheses 解答
- maven使用jstl表达式和The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application解决
- Unable to start Ocelot because either a ReRoute or GlobalConfiguration
- Win2008服务启动不能调用Office Word的解决方法
- Eclipse报错:!!MESSAGE Job found still running.......
- AGC005F Many Easy Problems(NTT)
- oracle项目代码
- 【转】28个Unix/Linux的命令行神器
热门文章
- vs2013的asp.net 管理
- drawer principle in Combinatorics
- 2016年7月1日 星期五 --出埃及记 Exodus 14:28
- linux下如何安装配置redis及主从配置
- 系统调优之numa架构
- ioshittest的用法
- 快速编译system.img、userdata.img、boot.img的方法
- update-alternatives命令
- Duilib中系统消息在自己窗口类的使用
- 编写一个Car类,具有final类型的属性品牌,具有功能drive; 定义其子类Aodi和Benchi,具有属性:价格、型号;具有功能:变速; 定义主类E,在其main方法中分别创建Aodi和Benchi的对象并测试对象的特 性。