如何打印json对象的jsonpath

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

我正在寻找JavaAPI,它为json对象中的所有字段打印jsonpath。我的第一部分需求是,对于给定的json对象(或字符串)-

{
"store": {
    "book": [
        {
            "category": "reference",
            "author": "Nigel Rees",
            "title": "Sayings of the Century",
            "price": 8.95
        },
        {
            "category": "fiction",
            "author": "Evelyn Waugh",
            "title": "Sword of Honour",
            "price": 12.99
        }
}

它应该以键值方式打印所有属性,其中key是字段的jsonpath。
输出应该如下所示-

$.store.book[0].category=reference
$.store.book[0].author=Nigel Rees
$.store.book[0].title=Sayings of the Century
$.store.book[0].price=8.95
$.store.book[1].category=fiction
$.store.book[1].author=Evelyn Waugh
$.store.book[1].title=Sword of Honour
$.store.book[1].price=12.99

等等。这将用于匹配另一个json对象的值(我的第二个要求)。
我找到了一个apihttps://github.com/json-path/jsonpath 这在某种程度上符合我的需求的第二部分,但没有任何实用方法或方法来获取对象或字段的jsonpath。
在jsonpath中是否有任何javaapi或方法可以为json对象中的给定字段获取jsonpath?

ruyhziif

ruyhziif1#

如果你试过使用gson库,看看com.google.gson.stream.jsonreader.getpath(),我想这会让你走上正确的方向。

相关问题