Jackson: how to prevent field serialization [duplicate] Jackson: how to prevent field serialization [duplicate] json json

Jackson: how to prevent field serialization [duplicate]


You can mark it as @JsonIgnore.

With 1.9, you can add @JsonIgnore for getter, @JsonProperty for setter, to make it deserialize but not serialize.


Illustrating what StaxMan has stated, this works for me

private String password;@JsonIgnorepublic String getPassword() {    return password;}@JsonPropertypublic void setPassword(String password) {    this.password = password;}


The easy way is to annotate your getters and setters.

Here is the original example modified to exclude the plain text password, but then annotate a new method that just returns the password field as encrypted text.

class User {    private String password;    public void setPassword(String password) {        this.password = password;    }    @JsonIgnore    public String getPassword() {        return password;    }    @JsonProperty("password")    public String getEncryptedPassword() {        // encryption logic    }}