簡體   English   中英

使用JAVA在JSON中高效找到鍵值

[英]Efficiently find a key-value in JSON with JAVA

我想查找給定鍵的JSON中是否存在鍵值對。 此鍵值對可能不在根目錄下。 可以將其深深地嵌入文檔中。 例如:

{"Persons":[
  {"Person":
    {"name":"john"}
  }]
}

並且我想要類似JsonDoc.has(“ name”)的東西,並返回true。 我在線搜索並找到以下線程: Java:Json具有鍵/字段

兩個答案(minimal-json和org.json)都具有一些稱為has()或get()的功能,但是我查看了它們的源代碼,他們都試圖在root下找到鍵值。 所以他們不符合我的需求。

我可以考慮遍歷整個json並嘗試查找鍵值,但似乎效率不高。

如果使用Jackson,則可以在findParent上調用findParent ,它將在節點或其后代中查找字段。

http://fasterxml.github.io/jackson-databind/javadoc/2.2.0/com/fasterxml/jackson/databind/JsonNode.html#findParent(java.lang.String)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM