使用Ognl对象图导航语言,获取JSON多层嵌套数据

使用Ognl对象图导航语言,获取JSON多层嵌套数据,第1张

在公司金融云中台项目中,需要嫌改对接不同的资金方和资产方,对接的接口JSON报文形式也是各式各样。经常需要获取某个json字段,不得不层层获取json对象,非常不方便。

后来发现Ognl(Object Graph Navigation Language 对象导航图语言)能够通过EL表达式获取对象的属性值。根据这一特性,经过封装,轻正知松实现获取JSON多层嵌套数据。

工具特点

1、方便获取JSON多层嵌套数据,无需层层获取json对象

2、当json字段值为空字符串时,返回空字符串

3、当json字段不存在时,返回NULL

POM引入

封装OGNL工具类

测试

JSON示芹清判例

测试结果

首先楼上说的部分是对的。那么我先假设你已经获得了这个字符串,将之定义为jsonString.

JSONObject jsonObject = new JSONObject(jsonString)

然后,根据嵌套的种类,可以确定下一步如何取值。根据你的情况来看。应该是:

String user_get_response = jsonObject.getString("user_get_response")

JSONObject user_get_response_obj = new JSONObject(user_get_response)

这是针对第一层嵌贺颤套禅宏败的。

一层一层的取下去就好。如果是数绝颤组类型的,就用JSONArray来接收。

JSONArray jsonArray = new JSONArray(jsonObject.getString("xxx"))

总之就是由外到内去解析就好


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/tougao/12299186.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存