在JSON中,有两种结构:对象和数组。
1. 一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不需要。例如:
var o={"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"};
2. 数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。
例如:
var
jsonranklist=[{"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"},{"xlid":"zd","xldigitid":123456,"topscore":1500,"topplaytime":"2009-11-20"}];
在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。
首先前台调用: $("#json").bind("click",function(){
var jsons = {userList:
[{"age":88,"email":"feiji@qq.com","id":70,"keshi":"
骨 科","passWord":"feiji","phoneNumber":"34234","sex":1,"userId":"23432432","userName":"feiji","userType":1}]};
//alert(para);
$.ajax({
type:"POST",
url:"jsontest",
datatype:"json",
data:jsons,
success:function(msg){
alert(msg.userList[0].userName);
}
});
});
后台:
private List<User> userList;
public List<User> getUserList() {
return userList;
}
@JSON(serialize = true, deserialize = true)
public void setUserList(List<User> userList) {
this.userList = userList;
}
public String execute() {
// this.name = "feiji";
// System.out.println("========" + name + "=======");
// this.name = "daifei";
System.out.println("userList size:" + userList.size()
+ "**************");
System.out.println(userList.get(0).getUserName()
+ "$$$$$$$$$$$$$$$$$$$$$$");
return SUCCESS;
}
JQuery解析list的时候可参考,下面的小例子
var data = {"list":[{"id":1,"content":"测试信息1111"},{"id":2,"content":"测试信息2222"}]}
$.each(data.list, function(i, item) {
alert(item.id);
alert(item.content);
});