IT/Java

[Java/Jackson] Map을 JsonNode로 변환하기

hi.anna 2021. 9. 5. 23:07

 

Map을 Jackson의 JsonNode로 변환하기

import java.util.HashMap;
import java.util.Map;

import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;

public class MapToJsonNode {
    public static void main(String[] args) {

        // Map 생성
        Map<String, Object> map = new HashMap<>();
        map.put("id", 1);
        map.put("name", "Anna");

        // jackson objectmapper 객체 생성
        ObjectMapper objectMapper = new ObjectMapper();

        // Map -> JsonNode
        JsonNode jsonNode1 = objectMapper.valueToTree(map);
        JsonNode jsonNode2 = objectMapper.convertValue(map, JsonNode.class);

        // jsonNode 출력
        System.out.println(jsonNode1); // {"name":"Anna","id":1}
        System.out.println(jsonNode2); // {"name":"Anna","id":1}
    }
}

Map을 JsonNode로 변환할 때도,

Java Object를 JsonNode로 변환할 때와 마찬가지로

아래 2가지 메소드를 사용할 수 있습니다.

  • valueToTree()
  • convertValue()

 

 

반응형