programing

잭슨을 사용하여 HashMap을 JsonNode로 변환하는 방법

abcjava 2023. 3. 12. 10:18
반응형

잭슨을 사용하여 HashMap을 JsonNode로 변환하는 방법

나는 가지고 있다HashMap변환할 객체JsonNode트리 사용com.fasterxml.jackson.databind.ObjectMapper어떻게 하면 좋을까요?

아래 코드를 찾았는데 잭슨 API를 잘 모르기 때문에 더 좋은 방법이 없을까요?

mapper.reader().readTree(mapper.writeValueAsString(hashmap))

다음은 이 기능을 수행합니다.

JsonNode jsonNode = mapper.convertValue(map, JsonNode.class);

또는 코멘트에서 지적된 보다 우아한 솔루션을 사용합니다.

JsonNode jsonNode = mapper.valueToTree(map);

필요한 경우,jsonNode문자열로 사용합니다.

String json = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(jsonNode);

먼저 JsonNode에서 맵을 변환합니다.

ObjectMapper mapper = new ObjectMapper();
JsonNode jsonNodeMap = mapper.convertValue(myMap, JsonNode.class);

그런 다음 set 메서드를 사용하여 이 노드를 ObjectNode에 추가합니다.

myObjectNode.set("myMapName", jsonNodeMap);

JsonNode에서 ObjectNode로 변환하려면 다음 명령을 사용합니다.

ObjectNode myObjectNode = (ObjectNode) myJsonNode;

언급URL : https://stackoverflow.com/questions/39391095/how-to-convert-hashmap-to-jsonnode-with-jackson

반응형