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;i list2=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"); List classLists=(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; }; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。