jsonpath 筛选数组
时间: 2023-08-16 07:12:40 浏览: 222
如果你想使用JSONPath来筛选JSON数组,可以使用一些支持JSONPath的库,例如Jayway JsonPath或Goessner JSONPath。
以下是一个使用Jayway JsonPath库的示例代码:
```java
import com.jayway.jsonpath.Configuration;
import com.jayway.jsonpath.JsonPath;
import com.jayway.jsonpath.Predicate;
import java.util.List;
public class JsonArrayFilter {
public static void main(String[] args) {
String json = "[{\"name\":\"John\", \"age\":30}, {\"name\":\"Jane\", \"age\":25}, {\"name\":\"Tom\", \"age\":40}]";
Configuration configuration = Configuration.defaultConfiguration();
List<Object> filteredList = JsonPath.using(configuration).parse(json)
.read("$[?(@.age > 25)]");
System.out.println(filteredList);
}
}
```
在上面的示例中,我们使用Jayway JsonPath库来解析JSON字符串,并使用`$[?(@.age > 25)]`的JSONPath表达式来筛选年龄大于25的对象。结果存储在`filteredList`中,并将其打印出来。
你可以根据自己的需求修改JSONPath表达式和处理逻辑。请确保已经引入了Jayway JsonPath库的依赖。
阅读全文