我希望我的所有对象都有一个ID,我希望将它序列化为某个子类但不能用于其他一些
例如:
public class A {
protected Long id;
..getter and setter
}
public class B extends A {
@Override
@JsonIgnore
public Long getId() {..}
@Override
@JsonIgnore
public void setId(Long id) {..}
}
public class C extends B {
@Override
@JsonInclude
public Long getId() {..}
@Override
@JsonInclude
public void setId(Long id) {..}
}
public class Test {
Set<C> tests ...
..getter setter
}
我尝试过序列化测试,但JSON字符串不包含ID 如果我从B中删除JsonIgnore,那么在那种情况下,Ids就在那里。
杰克逊有办法存档吗?
答案 0 :(得分:1)
使用
@JsonIgnore(false)
而不是
@JsonInclude