Json转list二层解析转换代码实例
一层结构的数据:
{
"code":"0",
"results":{
"boyTotal":0,
"classNumber":0,
"enrollmentsTotal":0,
"girlTotal":0,
"mobile":"15969538305",
"studentTotal":0,
"userCode":"141920370",
"userName":"杜文兵",
"userType":"1"
}
}
二层结构的数据:
{
"code":"0",
"results":{
"arrayList":[
{
"boyNumber":61,
"classId":"159",
"className":"17建筑工程技术01",
"deptName":"建筑工程学院",
"enrollments":61,
"girlNumber":0,
"majorName":"建筑工程技术",
"studentNumber":61,
"year":"2017"
},
{
"boyNumber":55,
"classId":"208",
"className":"17建筑工程技术02",
"deptName":"建筑工程学院",
"enrollments":56,
"girlNumber":1,
"majorName":"建筑工程技术",
"studentNumber":56,
"year":"2017"
},
{
"boyNumber":56,
"classId":"209",
"className":"17建筑工程技术03",
"deptName":"建筑工程学院",
"enrollments":56,
"girlNumber":0,
"majorName":"建筑工程技术",
"studentNumber":56,
"year":"2017"
},
{
"boyNumber":4,
"classId":"237",
"className":"17学前教育08",
"deptName":"人文学院",
"enrollments":67,
"girlNumber":63,
"majorName":"学前教育",
"studentNumber":67,
"year":"2017"
},
{
"boyNumber":4,
"classId":"238",
"className":"17学前教育09",
"deptName":"人文学院",
"enrollments":67,
"girlNumber":63,
"majorName":"学前教育",
"studentNumber":67,
"year":"2017"
},
{
"boyNumber":5,
"classId":"239",
"className":"17学前教育10",
"deptName":"人文学院",
"enrollments":67,
"girlNumber":62,
"majorName":"学前教育",
"studentNumber":67,
"year":"2017"
}
],
"boyTotal":185,
"classNumber":6,
"enrollmentsTotal":374,
"girlTotal":189,
"studentTotal":374,
"userCode":"131530220"
}
}
先上代码:
JSONObjectobj1=newJSONObject();
obj1.put("mobile","13008662173");
//查询员工编号
JSONObjectuserInfo=ToolsWebReq.sendPost(ToolsWebReq.TEACHER_SERVER_BASE_URL+ToolsWebReq.API_QUERYUSERID,obj1);
ListuserInfos=(List)JsonUtils.JsonToList(userInfo.get("results"),newUserInfo());
StringuserCode="";
if(userInfos!=null){
for(inti=0;ilist2=null;
JSONObjectobj=newJSONObject();
obj.put("userCode","131530220");
JSONObjectclassList=ToolsWebReq.sendPost(ToolsWebReq.TEACHER_SERVER_BASE_URL+ToolsWebReq.API_QUERYCLASSNUM,obj);
//解析第一层
JSONObjectrs=(JSONObject)classList.get("results");
//解析第二层
JSONArrayarrayList=(JSONArray)rs.get("arrayList");
ListclassLists=(List)JsonUtils.JsonToList(rs.get("arrayList"),newUserClassInfo());
System.out.println("classLists.get(0).getClassName()="+classLists.get(0).getClassName());
方法:
packagecom.xy.common.util;
importjava.util.List;
importnet.sf.json.JSONArray;
importnet.sf.json.JsonConfig;
publicclassJsonUtils{
/**
*json转对象
*
*@paraminput
*@return
*/
publicstaticList>JsonToList(Objectobject,ObjectclassModel){
JSONArrayarray=JSONArray.fromObject(object);
List>list2=net.sf.json.JSONArray.toList(array,classModel,newJsonConfig());//参数1为要转换的JSONArray数据,参数2为要转换的目标数据,即List盛装的数据
returnlist2;
}
}
对象:
packagecom.xy.web.entity;
importjava.util.Date;
importjavax.persistence.*;
publicclassUserInfo{
privateStringboyTotal;
privateStringclassNumber;
privateStringenrollmentsTotal;
privateStringgirlTotal;
/**
*联系电话
*/
privateStringmobile;
privateStringstudentTotal;
/**
*用户账号
*/
privateStringuserCode;
/**
*userName
*/
privateStringuserName;
/**
*用户类型(userType):1-员工,2-学生
*/
privateStringuserType;
publicStringgetBoyTotal(){
returnboyTotal;
}
publicvoidsetBoyTotal(StringboyTotal){
this.boyTotal=boyTotal;
}
publicStringgetClassNumber(){
returnclassNumber;
}
publicvoidsetClassNumber(StringclassNumber){
this.classNumber=classNumber;
}
publicStringgetEnrollmentsTotal(){
returnenrollmentsTotal;
}
publicvoidsetEnrollmentsTotal(StringenrollmentsTotal){
this.enrollmentsTotal=enrollmentsTotal;
}
publicStringgetGirlTotal(){
returngirlTotal;
}
publicvoidsetGirlTotal(StringgirlTotal){
this.girlTotal=girlTotal;
}
publicStringgetMobile(){
returnmobile;
}
publicvoidsetMobile(Stringmobile){
this.mobile=mobile;
}
publicStringgetStudentTotal(){
returnstudentTotal;
}
publicvoidsetStudentTotal(StringstudentTotal){
this.studentTotal=studentTotal;
}
publicStringgetUserCode(){
returnuserCode;
}
publicvoidsetUserCode(StringuserCode){
this.userCode=userCode;
}
publicStringgetUserName(){
returnuserName;
}
publicvoidsetUserName(StringuserName){
this.userName=userName;
}
publicStringgetUserType(){
returnuserType;
}
publicvoidsetUserType(StringuserType){
this.userType=userType;
};
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。