我有如下一类结构烧毛对象的java属性:杰克逊阵列deserilization到
@JsonTypeInfo(使用= JsonTypeInfo.Id.NAME,包括= JsonTypeInfo.As.PROPERTY,属性= “类型”)
@JsonSubTypes({
@JsonSubTypes.Type(name = "testA", value = TestA.class),
@JsonSubTypes.Type(name = "testB", value = TestB.class),
@JsonSubTypes.Type(name = "testC", value = TestC.class)
})
public abstract class Test {
}
public class TestA extends Test {
private String firstName;
private String secondName;
private String surName;
}
public class TestB extends Test {
private String adressLine1;
private String adressLine2;
private String adressLine3;
}
public class TestC extends Test {
private String hobby1;
private String hobby2;
private String hobby3;
}
上述类别被序列化为JSON元件的阵列,但是当我去连载他们回来,我想如下结构:
公共类FlatStructure {
private TestA testA;
private TestB testB;
private TestC testC;
public void setTestA(TestA testA){
this.testA = testA;
}
public TestA getTestA(){
return testA;
}
.....getter and setter for testB and testC...
}
是否可以将testA,testB和testC类型的元素数组转换为FlatStructure类的属性?
[如何使用杰克逊反序列化对象数组]可能重复(http://stackoverflow.com/questions/6349421/how-to-use-jackson-to-deserialise-an-array-of-对象) –
@Abby,谢谢你的回答,但是我不想将json元素的数组反序列化为List。我试图反序列化json元素的数组作为另一个对象的属性。因此不重复。请再次阅读我的帖子。 – Moh