Jackson은 자바의 데이터 처리를 위한 라이브러리로 주로 객체를 JSON으로 직렬화하거나 JSON을 자바 객체로 역직렬화 하기위해 사용한다.
데이터 직렬화는 객체를 외부에서 사용하기 위해 저장 매체에 저장할 수 있는 형식이나 네트워크 등에 전송할 수 있는 형식으로 변환하는 것을 말하며
데이터 역직렬화는 저장 매체에 저장되어있는 데이터 또는 네트워크를 통해 전달된 데이터를 다시 객체로 변환하는 것을 뜻한다.
자바에서 REST API를 작성하다보면 직렬화와 역직렬화를 주로 JSON 형식의 문자열로 진행하게 된다.
getXxx()setXxx(value)//EX1
class Person {
//private 필드는 JSON 필드에서 제외
private String name;
public int age;
}
//직렬화 결과
// {"age":10}
//EX2
class Person {
private String name;
public int age;
public Person(){}
//public getter로 JSON 필드에 포함
public String getName(){
return name;
}
}
//직렬화 결과
//{"name":"test","age":10}