我想知道是否某个地方存在一个能够查询JSONObject的Java库。我正在更深入地寻找类似的东西:
String json = "{ data: { data2 : { value : 'hello'}}}"; ... // Somehow we managed to convert json to jsonObject ... String result = jsonObject.getAsString("data.data2.value"); System.out.println(result);
我希望得到“ hello”作为输出。
到目前为止,我发现最快的方法是使用Gson:
jsonObject.getAsJsonObject("data").getAsJsonObject().get("data2").getAsJsonObject("value").getAsString();
实际上,读写并不容易。有更快的东西吗?
我刚刚意外地发现了一个非常有趣的项目:JSON Path
JsonPath对JSON而言,XPATH对XML而言,是一种提取给定文档部分的简单方法。
有了这个库,您可以轻松完成您所要求的工作,然后是我之前的建议:
String hello = JsonPath.read(json, "$.data.data2.value"); System.out.println(hello); //prints hello
希望这对您有所帮助。