我正在使用Jackson並希望將子類的字段序列化爲子元素。不幸的是,傑克遜的文件很糟糕將子類序列化爲子元素
@JsonRootName(value = "subclass")
public class ProfilerTask extends Task {
private int age;
private int grade;
public ProfilerTask(String name, Date createdOn, int age, int grade) {
super(name, createdOn);
this.age = age;
this.grade = grade;
}
/**
* @return the age
*/
public int getAge() {
return age;
}
/**
* @return the grade
*/
public int getGrade() {
return grade;
}
}
我得到這個:{"name":"test task","createdOn":1372771395040,"age":25,"grade":4}
,而其實我是想子類的字段是一個子元素。
如果你想有子元素,你必須使用組合而不是繼承。 –
嗨,我可以不知何故說傑克遜寫一個領域不是在目前的水平,但1級以下? – damluar