springMVC绑定json参数之二(2.2.1)

Posted 学无止境

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springMVC绑定json参数之二(2.2.1)相关的知识,希望对你有一定的参考价值。

二、springmvc 接收不同格式的json字符串

2.扫盲完了继续测试springmvc 接收不同格式的json字符串

1).格式一:json简单数组对象

前台两种传递方式:

方式一(需要拼接json字符串):

 1 test = function () {
 2         var test = ‘[{"userName":"test11","address":"gz11"},‘ +
 3             ‘{"userName":"ququ22","address":"gr22"} ]‘;
 4 
 5                 jQuery.ajax({  
 6                     url : cur_url+"/weekly/test",  
 7                     type : ‘post‘,  
 8                     data : test,  
 9                     dataType : ‘json‘,
10                     contentType:‘application/json;charset=utf-8‘,
11                     success : function (data, textStatus) { 
12                         console.info(data);
13                         console.info(data.length);
14                         for ( var i = 0; i < data.length; i++) {
15                             console.info(i + ":" + data[i].address);
16                             console.info(i + ":" + data[i].userName);
17                         }
18                         alert("test success!");
19                     },
20                     error:function(){
21                         alert("test error!");
22                     }
23                 });
24     };

方式二(使用JSON.stringify将json对象转字符串,推荐使用此方式,此方式需要先var一个js对象,然后给js对象加属性):

 1 test = function () {
 2         
 3         var test = [{"userName":"test","address":"gz"},  
 4                      {"userName":"ququ","address":"gr"}  
 5                      ];
 6 
 7 
 8                 jQuery.ajax({  
 9                     url : cur_url+"/weekly/test",  
10                     type : ‘post‘,  
11                     data : JSON.stringify(test),  
12                     dataType : ‘json‘,
13                     success : function (data, textStatus) { 
14                         console.info(data);
15                         alert("test success!");
16                     },
17                     error:function(){
18                         alert("test error!");
19                     }
20                 });
21     };

传递json字符串都有这两种传递方式,不管是什么格式的json字符串(在这格式一说明一下,后面章节统一使用方式二传递)
后台接收:

 1     @RequestMapping("/test")
 2     @ResponseBody
 3     public List<User> test(@RequestBody User[] t) {
 4         for (User user : t) {
 5             System.out.println("user:" + user);
 6             System.out.println("userName:" + user.getUserName());
 7             System.out.println("address:" + user.getAddress());
 8             
 9            }
10            List<User> tt = Arrays.asList(t);
11            for (int i = 0; i < tt.size(); i++) {
12                User u = tt.get(i);
13                System.out.println(i + "tt:" + u);
14            }
15            return tt;
16         
17     }

这个例子在之前已经讲过了,这里作为格式一举例;

 


以上是关于springMVC绑定json参数之二(2.2.1)的主要内容,如果未能解决你的问题,请参考以下文章

springMVC绑定json参数之一

springmvc-高级参数绑定-映射-异常-json数据交互-拦截器

存在日期类型的JSON数据,进行SpringMVC参数绑定时存在的问题和解决方案

springmvc怎么接收json数组对象

SpringMVC的JSON数据交互

SpringMVC总结