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

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

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

  1. {
  2. A: {key: "1"}
  3. B: {key: "1"}
  4. C: {key: "1"}
  5. D: {key: "1"}
  6. E: {key: "1"}
  7. }

  1. {
  2. A: {key: "7"}
  3. B: {key: "7"}
  4. E: {key: "7"}
  5. G: {key: "7"}
  6. }

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

qvk1mo1f

qvk1mo1f1#

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

  1. List<?> result = JsonPath.parse(s1)
  2. .read("$..key", List.class);
  3. result.stream()
  4. .findAny()
  5. .ifPresent(System.out::println);

相关问题