繁体   English   中英

使用 JsonPath-Jayway 检索 JSON 元素

[英]Retrieve JSON element using JsonPath- Jayway

我有一个低于 JSON。 我想在 street =='abc strt.' 的地方获取 pin 码。
我正在使用 Jaway 来实现这一点。

{
  "studentId": "10001",
  "studentSection": "A",
  "address": [
    {
      "street": "abc strt.",
      "pincode": "00000000"
    },
    {
      "street": "xzy strt.",
      "pincode": "1111111"
    },
    {
      "street": "678 strt.",
      "pincode": "8765"
    },
    {
      "street": "ity strt.",
      "pincode": "234567"
    }
  ]
}
List<String> = result = JsonPath.read(json, "$.['address'].[?@.street == 'abc strt.'].pincode");

JayWay XPath: $.['address'].[?@.street == 'abc strt.'].pincode ,它正在返回List<String>
上述查询将始终返回单个值,但由于返回类型为List<String> ,我必须将值用作list.get(0)


有没有办法返回字符串而不是列表?

此外,我还有 10 个查询,我必须在同一个 JSON 上执行这些查询。 我应该查询一次并使用结果,还是可以查询 10 次并使用结果。 这样做的首选方法是什么?

根据Jayway Jsonpath 文档

Jayway JsonPath 是 Stefan Goessner JsonPath 实现的 Java 端口。

根据Stefan Goessner JsonPath 文档

请注意,jsonPath 的返回值是一个数组,也是一个有效的 JSON 结构。 因此,您可能希望再次将 jsonPath 应用于生成的结构,或者使用您最喜欢的数组方法之一对其进行排序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM