json获取多级java_如何优雅的判断多层级JSON最深处的key是否存在
时间: 2023-12-10 10:03:37 浏览: 250
在Java中,可以使用JsonPath库来优雅地判断多层级JSON最深处的key是否存在。
以下是一个使用JsonPath库判断多层级JSON最深处的key是否存在的示例代码:
```java
import com.jayway.jsonpath.JsonPath;
public class JsonPathExample {
public static void main(String[] args) {
String json = "{ \"person\": { \"name\": { \"first\": \"John\", \"last\": \"Doe\" }, \"age\": 30 } }";
boolean exists = JsonPath.read(json, "$..last") != null;
System.out.println(exists);
}
}
```
在上面的代码中,我们使用JsonPath库来解析JSON字符串并判断最深处的key是否存在。在这个例子中,我们想要判断“last”字段是否存在,它位于嵌套的JSON中。为了实现这个目标,我们使用了JsonPath表达式“$..last”,其中“$”表示根节点,“..”表示递归搜索,而“last”表示我们想要判断的字段名。最终,我们通过检查返回的值是否为null来判断是否存在该字段。
值得注意的是,JsonPath库还支持更复杂的表达式,例如过滤器、函数等等。因此,如果您需要更高级的功能,您可以查看JsonPath库的文档以获取更多信息。
阅读全文