IT/Java
[Java/Jackson] JsonNode를 Object로 변환하기
hi.anna
2021. 9. 5. 23:16
지난번에는 Jackson 라이브러리를 이용하여
Java Object를 JsonNode로 변환하는 방법을 알아보았습니다.
[Java/Jackson] Java Object를 JsonNode로 변환하기
이번에는, JsonNode를 Object로 변환하는 방법을 정리해 보았습니다.
JsonNode -> Java Object
JsonNode를 아래의 Student 클래스 객체로 변환하는 예제입니다.
Student.java
public class Student {
private int id;
private String name;
public Student() {
}
public Student(int id, String name) {
this.id = id;
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Student [id=" + id + ", name=" + name + "]";
}
}
JsonNodeToObject.java
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
public class JsonNodeToObject {
public static void main(String[] args) throws JsonMappingException, JsonProcessingException {
// Json 문자열
String jsonStr = "{\"id\":1,\"name\":\"Anna\"}";
// jackson objectmapper 객체 생성
ObjectMapper objectMapper = new ObjectMapper();
// JsonNode 생성 (readValue)
JsonNode jsonNode = objectMapper.readTree(jsonStr);
// JsonNode -> Java Object
Student student = objectMapper.treeToValue(jsonNode, Student.class);
// Student 객체 출력
System.out.println(student); // Student [id=1, name=Anna]
}
}
JsonNode를 Student 객체로 변환하기 위해서
ObjectMapper 클래스의 treeToValue() 메소드를 사용하였습니다.
반응형