Jackson 어노테이션을 사용하여 특정 디시리얼라이저를 제공 할 수 있습니다.
@JsonDeserialize(using = ADeserializer.class)
public class A {
private String field;
private B b;
// ...
}
당신의 유형에 대한 디시리얼라이저는 사용자 정의 시리얼을 사용하는 것이 가능 직렬화를 들어이
public class ADeserializer extends JsonDeserializer<A> {
@Override
public A deserialize(JsonParser p, DeserializationContext ctx) throws IOException {
ObjectCodec codec = p.getCodec();
JsonNode node = codec.readTree(p);
String field = node.get("field").asText();
int n = node.get("n").asInt();
A a = new A();
B b = new B();
b.setN(n);
a.setField(field);
a.setB(b);
return a;
}
}
같이해야한다. 그게 전부 야.
알렉스가 [그의 대답] (http://stackoverflow.com/a/41775176/466862)에서 설명했듯이 가능합니다. –