我有一个REST响应,其中包含文本和JSON值。我需要从JSON值中获取uniqueId,最好的方法是什么?我的JSON非常大,但看起来像这样:paymentResponse =已将您的自定义事务json发布到主题env_txn_endtoend_01最终json:{“事务处理标识”:空,“信封”:{“唯一标识”:234234_2344432_23442”,“根标识”:“34534554534”等...}}如何获得此唯一ID值= 234234_2344432_23442?
lpwwtiir1#
有许多库可以帮助进行Json序列化和反序列化。Jackson Object Mapper是最常用的库之一。代码应该是这样的,首先你需要Java Pojo来表示你的json对象,例如,让我们考虑this tutorial中的这个例子,在这里你可以从一个Car json字符串创建一个Car Java对象。
ObjectMapper objectMapper = new ObjectMapper(); String json = "{ \"color\" : \"Black\", \"type\" : \"BMW\" }"; Car car = objectMapper.readValue(json, Car.class); // you should have a Car Class(Pojo) with color, and type attributes
pvabu6sv2#
最终json:{“事务处理标识”:空,“信封”:{“唯一标识”:234234_2344432_23442”,“根标识”:“34534554534”等...}}如何获取此唯一ID值= 234234_2344432_23442你可以这样做:
import groovy.json.JsonSlurper ... String jsonString = '{"txnId":null, "envelope":{"uniqueId":"234234_2344432_23442","rootID":"34534554534"}}' def slurper = new JsonSlurper() def json = slurper.parseText(jsonString) def envelope = json.envelope String rootId = envelope.rootID assert rootId == '34534554534' String uniqueId = envelope.uniqueId assert uniqueId == '234234_2344432_23442'
2条答案
按热度按时间lpwwtiir1#
有许多库可以帮助进行Json序列化和反序列化。Jackson Object Mapper是最常用的库之一。
代码应该是这样的,首先你需要Java Pojo来表示你的json对象,例如,让我们考虑this tutorial中的这个例子,在这里你可以从一个Car json字符串创建一个Car Java对象。
pvabu6sv2#
最终json:{“事务处理标识”:空,“信封”:{“唯一标识”:234234_2344432_23442”,“根标识”:“34534554534”等...}}
如何获取此唯一ID值= 234234_2344432_23442
你可以这样做: