Object 를 Map 으로 바꾸고 싶었다.
stream.map().collect(Collectors.toList()) 를 사용하면 유연한 변화가 가능하지만,
타입 변환만 하면 되기에, ObjectMapper 를 사용해서 바꿔준다.
public void sampleMapper(Object obj) {
ObjectMapper mapper = new ObjectMapper();
Map<String,Object> objMap = mapper.convertValue(obj, new TypeReference<Map<String,Object>() {});
}
해당 Object 의 List가 Map의 Key,Value 로 들어간다.
mapper.convertValue 를 통해 Object > Entity, List > Map 등 다양한 변환이 가능하다.
stream 보단 간편하지만 자유도는 떨어진다.
그리고 mapper.converValue 로 변환 시 Map의 구현체가 LinkedHashMap 이다.
'JAVA' 카테고리의 다른 글
[JAVA] OkHttp 사용법 + IllegalStateException 에러 원인/해결 방법 (0) | 2023.07.10 |
---|---|
[JAVA] StreamAPI를 이용 한 List 값 중복 제거 (0) | 2023.06.22 |
[JAVA] List를 comma(,)로 구분된 String(문자열)으로 변환하기 (0) | 2023.06.20 |
[JAVA] Java Stream - 두 개의 List 객체 비교하기 (0) | 2023.06.15 |
[JAVA] HashMap Key,Value 가져오기 (0) | 2023.04.17 |