使用 json 路径 java 从 json 中提取值

Extracing values from json using json path java

我正在尝试编写一个 json 路径查询以从我测试 return 的 json 中提取值。我的样本 json 看起来像这样:

{
    "childNode1":{
    "name":"Node to be validated"
    },    
    "unusedNode":"Submitted",
    "childNode2":[
    {
    "tester2":"value to be tested against"
    }
    ]
}

如果 childNode2 中的 tester2 值与我的输入匹配,我想验证 childNode1 中的名称。如果 tester2 值与我的输入匹配,如何在 childNode1 中获取名称的值。

我尝试了以下 json 路径查询:

$..childNode2..tester2..childNode1..name

$..childNode2..tester2..name

但只有空值得到 returned。

您可以通过以下jsonpath获取tester2的值:

String childNode2Value = jsonPath.get('$.childNode2..tester2')

if (childNode2Value.equals("your test input"))
{
 String childNode1Name = jsonPath.get('$.childNode1.name')
}

可以找到评估 jsonPath 的简便方法 here

并且可以看到jsonPath引用here.