SpringMVC @RequestBody接收Json对象字符串
2016-05-17 15:45
751 查看
页面提交请求参数有两种,一种是form格式提交,一种json格式提交
通常情况下我们使用的都是form格式提交的数据,数据格式:k=v&k=v,这个时候用springMVC接收参数没有问题,但有时候前端会通过json向后端传递数据,就会出现springMVC获取不到参数值的情况
注意:jquery的$.post方法虽然也可以传递json格式数据,但实际上是用的form格式提交,jquery会帮你把json转成form格式提交后台
所以其实可以通过$.post,$.get来提交json格式,让jquery帮你转换,可是如果后端用来restful,那就只能用以下方法解决
前端请求:
后端springMVC接收
注意:提交的data必须为json格式字符串,content-type为'application/json; charset=utf-8'表明提交的类型和编码格式,dataType是预期服务端返回的数据类型,其中对json字符串的格式有严格要求,形如:'{"type":"type","fileftppath":"fileftppath","map":{"id":1,"name":"suo"}}',字符串,key的双引号是必须的,否则400
通常情况下我们使用的都是form格式提交的数据,数据格式:k=v&k=v,这个时候用springMVC接收参数没有问题,但有时候前端会通过json向后端传递数据,就会出现springMVC获取不到参数值的情况
注意:jquery的$.post方法虽然也可以传递json格式数据,但实际上是用的form格式提交,jquery会帮你把json转成form格式提交后台
所以其实可以通过$.post,$.get来提交json格式,让jquery帮你转换,可是如果后端用来restful,那就只能用以下方法解决
前端请求:
<script type="text/javascript"> $(document).ready(function(){ var saveDataAry=[]; var data1={"userName":"test","address":"gz"}; var data2={"userName":"ququ","address":"gr"}; saveDataAry.push(data1); saveDataAry.push(data2); $.ajax({ type:"PUT", url:"/user", dataType:"json", contentType:"application/json;charset=utf-8", data:JSON.stringify(saveData), success:function(data){ } }); }); </script>
后端springMVC接收
@RequestMapping(value = "user", method = RequestMethod.PUT ) @ResponseBody public void saveUser(@RequestBody List<User> users) { userService.batchSave(users); }
注意:提交的data必须为json格式字符串,content-type为'application/json; charset=utf-8'表明提交的类型和编码格式,dataType是预期服务端返回的数据类型,其中对json字符串的格式有严格要求,形如:'{"type":"type","fileftppath":"fileftppath","map":{"id":1,"name":"suo"}}',字符串,key的双引号是必须的,否则400
bad request
相关文章推荐
- Spring中BeanFactory和FactoryBean区别
- Spring 4.x官方参考文档中文版——第21章 Web MVC框架(4)
- 【软件测试】Java读取.csv文件
- javaweb学习总结(十九)——JSP标签
- 第四章 Controller接口控制器详解(7 完)——跟着开涛学SpringMVC
- java学习个人笔记---非静态内部类
- 利用struts2拦截器加自定义注解实现权限控制
- 第三章 DispatcherServlet详解 ——跟开涛学SpringMVC
- java类加载器
- 毕设系列—服务端:Java-SSH框架(2)之服务器端发送JSON格式数据
- JAVA正则表达式:Pattern类与Matcher类详解(转)
- [置顶] java web开发(一) 环境搭建
- 用eclipse打开一个文件,左边的树怎么自动对应文件
- Java RandomAccessFile使用
- java 面向对象练习题4
- Java并发编程:Lock
- java 地址记录
- java入门之main
- java8 时间
- Gson解析报错 java.lang.ClassCastException: com.google.gson.internal.StringMap cannot be cast to XXX