matols的gravatar头像
matols 2014-12-08 17:40:06

java多层json递归解析转换工具类代码分享

/** 
 *  @author matols.com
 *  2014-12-05
 *  通用多层json递归解析。主要是在没有Object对象,或者是极度复杂的多级嵌套json,情况下可以以类的方式,直接获取想要的结果。
 *  支持String、Map、ArrayList、ArrayMap四种返回对象的数据获取
 *  使用方式:根据json层级关系直接使用: 基节点.子节点.孙节点
 */

 

基节点.子节点.孙节点(基节点.x.x.x.x...) 随意获取指定层的字符、map、集合、集合map


//层级递归String
Object obj = getObjectByJson(jsonStr,"response.data.ptitle",TypeEnum.string); 
System.out.println("API:"+obj.toString());

//层级递归Map
Object obj = getObjectByJson(jsonStr,"response.page",TypeEnum.map);  
System.out.println("API:"+obj.toString()+((Map)obj).get("pageSize"));

//层级递归ArrayList
Object obj = getObjectByJson(jsonStr,"response.status.statusMessage",TypeEnum.arrayList); 
System.out.println("API:"+obj.toString()+((List)obj).get(0));

//层级递归ArrayMap
Object obj = getObjectByJson(jsonStr,"response.data.productList",TypeEnum.arrayMap);   
System.out.println("API:"+obj.toString()+((List<Map>)obj).get(1).get("pid"));


打赏

文件名:myweb-json.zip,文件大小:1023.797K 下载
最代码最近下载分享源代码列表最近下载
ewan007  LV26 2021年10月21日
Alexyin  LV1 2020年12月1日
拎壶冲666  LV1 2020年9月24日
csy1209457788  LV3 2020年6月10日
唐少darks  LV13 2020年4月21日
芬苯的样  LV1 2020年3月10日
wgjair19940901  LV1 2019年12月23日
qwe8625291  LV1 2019年11月15日
平头哥  LV1 2019年10月31日
ericzeng  LV1 2019年10月8日
最代码最近浏览分享源代码列表最近浏览
fengzhongye 3月2日
暂无贡献等级
ewan007  LV26 2021年10月21日
狐言不语  LV5 2021年6月26日
xiaoche117  LV17 2021年4月8日
Alexyin  LV1 2020年12月1日
chenbo2327  LV2 2020年11月25日
wkc  LV21 2020年7月26日
zhangtian1997  LV10 2020年6月22日
csy1209457788  LV3 2020年6月10日
hxb2000  LV1 2020年6月5日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友