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"));
합니다.
이 모든 것을 수행하지 않고 위치 노드에 대한 직접 참조를 얻을 수 있습니까? 예 :
new ObjectMapper().readValue(json).findNodeByName("lat").getFloatValue();
내가 잭슨 API의 JsonNode과 나무에 대한 문서를 읽고 있지만, 당신이 전체 트리를 탐색하려는 경우에만 그들은 유용한 것 - 같은있다.
특정 노드 만 가져 오는 가장 쉬운 방법은 무엇입니까?
원래의 질문에 실제로 대답하기 위해 +1, 내가 취했을 접근법이 아니더라도. :) –