jackson的只写属性
在我的实体类中,我正在尝试创建一个只写字段(在序列化期间被忽略,但是通常会被反序列化)。
@JsonProperty @JsonSerialize(using=NullSerializer.class) public String getPassword() { return password; }
这几乎给了我想要的东西:JSON包含“password”字段,但值始终为null。 如何完全删除该字段?
仅在getter getPassword
上使用@JsonIgnore
,而不是使用NullSerializer
。 然后在setter上使用@JsonProperty("password")
。
这应该允许password
被反序列化,但序列化的JSON输出将不包括它。
例如,一个“getter”方法,否则表示一个属性(比如说,“getValue”来建议属性“value”)来序列化,将被忽略,除非另一个注释定义了另一种方法,否则不会输出这样的属性。 。
您可以设置access
值:
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY) private String password;