使用jsonpath如何获得这些json对象的内部值

q35jwt9p  于 2021-06-30  发布在  Java
关注(0)|答案(1)|浏览(383)

假设我有一些类似这样的json,我正在用它进行解析 JsonPath :

{
  A: {key: "1"}
  B: {key: "1"}
  C: {key: "1"}
  D: {key: "1"}
  E: {key: "1"}
}

{
  A: {key: "7"}
  B: {key: "7"}
  E: {key: "7"}
  G: {key: "7"}
}

a、 b、c、d、e等可以是任何标签,不定期命名。然而, key 在每个对象中始终具有相同的值。使用 JsonPath 查询如何获取 key ? 更清楚的是,输入应该是json,输出应该是一个包含 key

qvk1mo1f

qvk1mo1f1#

一种选择是使用 $..key . 这将返回一个 List 价值观。
然后我们需要使用“streamapi”从中获取元素。

List<?> result = JsonPath.parse(s1)
                      .read("$..key", List.class);

result.stream()
      .findAny()
      .ifPresent(System.out::println);

相关问题