스프링 웹 MVC/Spring Hateoas 위에 API를 작성 중이며 간단한 클래스 계층 구조의 비 직렬화가 매력처럼 작동한다고해도 jackson을 사용하여 Json 입력을 deserialize 할 수는 없습니다. 모두가 SO에 다른 많은 유사한 질문에 나를 보낸다잭슨의 상속과 역 직렬화
public class A {
protected String fieldA;
}
public class B extends A {
protected String fieldB;
}
public class C extends A {
protected String fieldC;
}
하기 전에, 여기에 주요 차이점은 A가 콘크리트 점이다 : 여기 내 클래스 계층 구조입니다. 다시 말해 Jackson은 json 필드를 타이 브레이커로 사용하여 3 가지 구현 중에서 선택해야합니다. (A)의 인스턴스에
{
"fieldA": "asdf"
}
, 및 B의 인스턴스에
{
"fieldA": "asdf",
"fieldB": "asdf"
}
: 기본적으로
, 어떻게 잭슨이 직렬화를하도록 구성 할 수 있습니다?