GoogleジオコーディングAPIを使用して逆ジオコーディングを実行しています。Json Treeで名前でノードを見つける方法は?
結果をJSONで返され、私は次のようにして解析していた - 応答がJSONは、サーバーから返さ含ま
Map<String, Object> parsedJson = new ObjectMapper().readValue(
response.getEntity(String.class),
new TypeReference<Map<String, Object>>() {
});
List<Object> results = (List<Object>) parsedJson.get("results");
// From first result get geometry details
Map<String, Object> geometry = (Map<String, Object>) ((Map<String, Object>) results
.get(0)).get("geometry");
Map<String, Object> location = (Map<String, Object>) geometry
.get("location");
Map<String, Double> coordinates = new HashMap<String, Double>();
coordinates.put("latitude", (Double) location.get("lat"));
coordinates.put("longitude", (Double) location.get("lng"));
を。
これをすべて実行することなく、位置ノードへの直接参照を取得できますか?例えば。私はジャクソンAPIでJsonNodeとツリー上のドキュメントを読みましたが、彼らはあなたがツリー全体をトラバースする場合にのみ便利です思える
new ObjectMapper().readValue(json).findNodeByName("lat").getFloatValue();
- のようなものがあります。
特定のノードだけをフェッチする最も簡単な方法は何でしょうか?
私が取ったアプローチではないとしても、元の質問に実際に答えるため+1。 :) –