日期:2014-05-16  浏览次数:20366 次

前台如何将多个json对象传入java后台

?前台json格式的数据如何传入后台

1. 将要传入后台的数据组装成JSON格式的字符串:

var jsonStr = [{'name':'jim' , 'age':20} ,?{'name':'king' , 'age':26},{'name':'jge' , 'age':30}]

?

2. 使用JQuery的ajax请求后台

?

jQuery.ajax({

type: "post",

url: url,

dataType : 'json',

data : {'mydata':jsonStr},

success: function(data,textStatus){

alert("操作成功");

},

?error: function(xhr,status,errMsg){

? ? ? ? alert("操作失败!");

? ? ? ? ? ? }

});

?

3.后台数据的接收与解析:

?

String jsonStr = request.getParameter("jsonStr");

?

JSONArray jsonArray = ?new JSONArray(jsonStr?);?

?

for(int i=0;i<jsonArray.length(); i++){

?

JSONObject jsonJ = jsonArray.getJSONObject(i);?

?

jsonJ.getInt("name");

?

jsonJ.getString("age");?

?

}

?

?

4. 操作完成, 附件为:JSONObject包;

?

1 楼 suixinm 2011-07-22  
帅锅,你传个jar上来给谁用啊?
2 楼 wing123 2012-06-25  
不能用 运行报错 你试过没啊?
3 楼 WangQingHua123 2012-06-25  
wing123 写道
不能用 运行报错 你试过没啊?

这是我之前开发过程中总结出来的 , 而且当时那个项目就是用这种方式传递多个json对象的. .不知道你报的是什么错.
4 楼 vasuer 2012-09-08  
String jsonStr = request.getParameter("jsonStr");
jsonStr为null

提交的url的参数是这个
mydata%5B0%5D%5Bname%5D=jim&mydata%5B0%5D%5Bage%5D=20&mydata%5B1%5D%5Bname%5D=king&mydata%5B1%5D%5Bage%5D=26&mydata%5B2%5D%5Bname%5D=jge&mydata%5B2%5D%5Bage%5D=30
mydata[0][age] 20
mydata[0][name] jim
mydata[1][age] 26
mydata[1][name] king
mydata[2][age] 30
mydata[2][name] jge

后台取数据不方便啊