我有一个POJO课程
class Human{
String name;
Integer age;
//get and set
}
当我将json反序列化为Human
对象时,我想要读取两个字段(age
和name
值)。但是当我将Human
对象序列化为json时,我想忽略age
。
这可能吗?
答案 0 :(得分:8)
@JsonIgnore
州的javadoc
此外,从Jackson 1.9开始,如果这是唯一的注释 与财产相关联,也会导致整体 要忽略的属性:即,如果setter具有此注释并且 getter没有注释,getter也被有效忽略。 是的 仍然可以让不同的访问者使用不同的注释; 所以如果只是" getter"是被忽略的,其他的访问者(setter或者 字段)需要明确的注释来防止忽视(通常 JsonProperty)。强>
所以只需适当注释getter和setter
// for serialization
@JsonIgnore
public String getName() {
return name;
}
// for deserialization
@JsonProperty("name")
public void setName(String name) {
this.name = name;
}