美文网首页
6,JsonPath进阶实战--JsonPath.read()源

6,JsonPath进阶实战--JsonPath.read()源

作者: lcjyzm | 来源:发表于2022-07-24 09:34 被阅读0次

    1,读json文档

    • 1.1,如果只读一次,直接使用JsonPath.read()静态方法读取json字符串
    String json = "...";
    List<String> authors = JsonPath.read(json, "$.store.book[*].author");
    
    • 1.2,如果多次读取json文档,为了避免每次都解析json文档,首先要解析json字符串
    String json = "...";
    // 第一步解析字符串
    Object document = Configuration.defaultConfiguration().jsonProvider().parse(json);
    
    String author0 = JsonPath.read(document, "$.store.book[0].author");
    String author1 = JsonPath.read(document, "$.store.book[1].author");
    
    • 1.3,JsonPath提供了fluent API,这是最灵活的一种方式
    String json = "...";
    
    ReadContext ctx = JsonPath.parse(json);
    
    List<String> authorsOfBooksWithISBN = ctx.read("$.store.book[?(@.isbn)].author");
    
    
    List<Map<String, Object>> expensiveBooks = JsonPath
                                .using(configuration)
                                .parse(json)
                                .read("$.store.book[?(@.price > 10)]", List.class);
    

    JsonPath.read()时序图

    JsonPath.png

    相关文章

      网友评论

          本文标题:6,JsonPath进阶实战--JsonPath.read()源

          本文链接:https://www.haomeiwen.com/subject/fuauirtx.html