[Java] Map to Object :: ObjectMapper

동민·2022년 4월 4일
0
Map<String, Object> response = XXX;

/*
response:
"itemCode": "12345678" (String)
"code": 1234 (Integer)
"dtm": YYYY.MM.DD ~ (Date)
*/

위와 같이 Map 에 매핑되어있는 key, value 데이터가 있고 value의 타입이 제 각각일 때,
값을 Map에서 꺼내 하나하나 형변환 시, Cast Exception 이 발생할 확률이 높다.

이럴 때, ObjectMapper를 사용하면 Cast Exception을 효율적으로 피할 수 있다.

@Setter
public class Info {
	private String itemCode;
    private Integer code;
    private Date dtm;
}

위와 같은 객체가 있을 때,

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

final ObjectMapper mapper = new ObjectMapper();

// Map
Map<String, Object> response = XXX;

// Map to Object
return mapper.convertValue(response, Info.class); // try-catch

각 타입에 맞게 매핑됨!

profile
BE Developer

0개의 댓글