Java 乱穿马路';如果JSON数据中不存在谓词中的键,则s JsonPath返回空数组
问题:我正在尝试使用表达式计算JSON文本Java 乱穿马路';如果JSON数据中不存在谓词中的键,则s JsonPath返回空数组,java,jsonpath,Java,Jsonpath,问题:我正在尝试使用表达式计算JSON文本 $.sessions[?(@.key=='session3')].value 使用Jayway JsonPath 2.2.0库 JsonText = { "username": xyz, "empid": "1", "sessions": [{ "key": "session1", "value": "java"}, { "key": "sess
$.sessions[?(@.key=='session3')].value
使用Jayway JsonPath 2.2.0库
JsonText = {
"username": xyz,
"empid": "1",
"sessions": [{
"key": "session1",
"value": "java"},
{
"key": "session2",
"value": "C"}]
}
即使我使用选项,它也会返回空对象而不是null。默认值为\u PATH\u LEAF\u到\u NULL0。
代码片段:
Configuration configuration = Configuration.defaultConfiguration().addOptions(Option.DEFAULT_PATH_LEAF_TO_NULL);
Object res = JsonPath.using(configuration).parse(JsonText).read("$.sessions[?(@.key=='session3')].value");
由于它是空对象,应用程序无法确定它的值是空的还是键本身不存在。请帮忙
注意:
选项。如果表达式是$…sessiontype
或$.session.sessiontype