Web/Spring Boot

ObjectMapper

콩벌레 개발자 2021. 5. 8. 18:37

객체의 정보를 Json형태로 바꾸거나, Json형태의 String을 해당 객체로 바꿔주는 클래스이다. 

 

객체에서 Json형태로

ObjectMapper objectMapper=new ObjectMapper();

User user=new User("steve",10,"010-2222-3333");
String text=objectMapper.writeValueAsString(user);

User 타입의 user객체를 생성하고 writeValueAsString메소드를 통해 user를 String형태로 변환 시키면 JSON형태의 {"name":"steve","age":10,"phone_number":"010-2222-3333"}가 된다.

이때 주의할점은 Json형태로 바꿀때 해당 클래스의 Getter로 값을 가져오기에, 해당 변수의 Getter가 없을 시 Json에서 변수가 빠진채로 변환되니 주의가 필요하다. 

 

 

Json형태에서 객체로

User objectUser=objectMapper.readValue(text,User.class);

readValue메소드로 Json을 객체의 형태로 바꾼다. 이 역시도 해당 객체의 클래스의 Getter로 값을 가져온다.