首页 > 编程知识 正文

嵌套对象转json,js 对象嵌套

时间:2023-05-05 10:12:13 阅读:179645 作者:3511

嵌套对象将移动到贴图中。 如果对象的嵌套层次太深,则会获取子对象的值及其不便之处。 为了解决此问题,可以将对象移动到map,并获得对应的值(如果有key )。

解决复杂的json情况尤其适用于第三方json过于复杂的情况。 例如,中央银行的征信报告等。

1 .将嵌套对象迁移到映射方法

此方法将嵌套对象转换为单层map。

MapString,object map=objecttomaputils.TRF map (JSON,'.'; 2 .获取嵌套对象值

该方法不需要转移到map,直接配置相关key,获取对应的value。

//获取目标值,key中无数组的情况string condition=' [ {' key' :' data.page.current' ] ] '; listsearchconditionconditions=JSON.parse array (condition,SearchCondition.class ); object value=objecttomaputils.getobjvalue (JSON,conditions,null ); //输出1system.out.println(value ); //与对象的值对应的数组condition=' [ {' key' :' data.rows.name','value':'进程步骤objectobj=objecttomaputils.getobjvalue (JSON,conditions,null ); system.out.println(obj; 代码是下一个:

测试json时,String json='{'success':0,'errorMsg':'错误消息 ','data'33330 ' :'任务id','workName':'任务名称 ' ' processinstanceinitiatorname' :'发起人 ',' “创建时间”:' id','workName':'名称 ','assigneeName':'联系人转到“:'到达 ','dueDate':'停止 //map,自定义连接器,并显示嵌套对象key和key的连接映射//获取//map值//输出{data.page.current=1,data.page.size=10,data={'total': '总记录数',' page ' 3: ' processInstanceStartTime': '开始时间',' createTime': '到达时间',' dueDate': '截止时间',' name': '处理步骤{ ' asigneename ' 3360 ' ' createtime ' : '到达',' processinstanceinitiatorname ' : ' '发起人',' dueDate': '截止日期' data.total=总记录数,data.rows=[ { ' assignee name ' : '联系人姓名',' processInstanceStartTime': '开始时间',' create ' dueDate': '截止时间',' name': '进程步骤名称',' ID': '任务id ',' wood ' ' processinstancestarttime ' 3: ' ' processinstanceinitiatorname ' : '发起人',' duedadata 'workName': '名称' },errorMsg=错误消息' system.out //输出10 system.out.println (map.get (' data.page.size ' ) ); //获取目标值,key中无数组的情况string condition=' [ {' key' :' data.page.current' ] ] '; listsearchconditionconditions=JSON.parse array (condition,SearchCondition.class ); object value=objecttomaputils.getobjvalue (JSON,conditions,null ); //输出1system.out.println(value ); //与对象的值对应的数组condition=' [ {' key' :' data.rows.name','value':'进程步骤objectobj=objecttomaputils.getobjvalue (JSON,conditions,null ); system.out.println(obj; 与value值对应的对象的数组condition=' [ {' key' :' data.rows.processinstanceinitiatorname', ' value obj=objecttomaputils.getobjvalue (JSON,conditions,null ); system.out.println(obj; map=objecttomaputils.TRF map (JSON,'-'; system.out.println(map; system.out.println (map.get (data-page-size ) ); 详情请参照demo的第4点。

demo地址:3359 github.com/13162576590/fast JSON _ demo

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。