[英]best approach to parse json response in spring boot
我正在使用 rest 模板使用休息端点,该模板返回以下 josn 消息。 object Wrappers 是更好的方法还是 json object 解析更好?
[
{
"id": "UAMwcI",
"messageId": "PyXPTk-6XUBhbONWZ2DOw3___pFykwV5bQ",
"timestamp": 1574330759814,
"type": "MESSAGESENT",
"initiator": {"user": {
"userId": 345315370604341,
"firstName": "Sanjeet",
"lastName": "Mohanty",
"displayName": "Sanjeet Mohanty",
"email": "Sanjeet.mohanty@db.com",
"username": "Sanjeet.mohanty@db.com"
}},
"payload": {"messageSent": {"message": {
"messageId": "PyXPTk-6XUBhbONWZ2DOw3___pFykwV5bQ",
"timestamp": 1574330759814,
"message": "<div data-format=\"PresentationML\" data-version=\"2.0\" class=\"wysiwyg\"><p>test 2 <\/p><\/div>",
"data": "{}",
"user": {
"userId": 345315370604341,
"firstName": "Sanjeet",
"lastName": "Mohanty",
"displayName": "Sanjeet Mohanty",
"email": "Sanjeet.mohanty@db.com",
"username": "Sanjeet.mohanty@db.com"
},
"stream": {
"streamId": "cL7jzEDwLxX_gN7D1QbMQn___pP73Ad6dA",
"streamType": "IM"
},
"externalRecipients": false,
"userAgent": "DESKTOP-40.0.0-10726-Windows-7-Chrome-76.0.3809.87",
"originalFormat": "com.symphony.messageml.v2"
}}}
},
{
"id": "Bvua7t",
"messageId": "8usJ_xioHKkRrevhyn38wn___pFykv-WbQ",
"timestamp": 1574330761321,
"type": "MESSAGESENT",
"initiator": {"user": {
"userId": 345315370604341,
"firstName": "Sanjeet",
"lastName": "Mohanty",
"displayName": "Sanjeet Mohanty",
"email": "Sanjeet.mohanty@db.com",
"username": "Sanjeet.mohanty@db.com"
}},
"payload": {"messageSent": {"message": {
"messageId": "8usJ_xioHKkRrevhyn38wn___pFykv-WbQ",
"timestamp": 1574330761321,
"message": "<div data-format=\"PresentationML\" data-version=\"2.0\" class=\"wysiwyg\"><p>test 3<\/p><\/div>",
"data": "{}",
"user": {
"userId": 345315370604341,
"firstName": "Sanjeet",
"lastName": "Mohanty",
"displayName": "Sanjeet Mohanty",
"email": "Sanjeet.mohanty@db.com",
"username": "Sanjeet.mohanty@db.com"
},
"stream": {
"streamId": "cL7jzEDwLxX_gN7D1QbMQn___pP73Ad6dA",
"streamType": "IM"
},
"externalRecipients": false,
"userAgent": "DESKTOP-40.0.0-10726-Windows-7-Chrome-76.0.3809.87",
"originalFormat": "com.symphony.messageml.v2"
}}}
}
]
有很多 Liberaiyes 序列化反序列化 JSON。
如果您有 Pojo class 匹配来自您的 rest API 的返回值,您可以使用例如 Z7930C951E6009E9A98E548
PojoClass mypojo = new ObjectMapper().readValue(JsonString, PojoClass.class);
或简单地转换为 JSonNode 并遍历节点
JsonNode jsonNode = new ObjectMapper().readTree(JsonString);
检查链接以获取更多信息https://www.baeldung.com/jackson-object-mapper-tutorial
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.