Java 想要在Json响应中的密码上添加@JsonIgnore属性吗
我想在User domain的Password属性中添加@JsonIgnore of Jackson,这样我就必须能够用密码发送Json,它会将我的数据保存在数据库中,但作为响应,我不想显示密码 我怎样才能做到这一点请帮帮我 我试图在定义属性的用户的域级别使用它,但它完全忽略了getter和setter方法中的属性 我试过这个Java 想要在Json响应中的密码上添加@JsonIgnore属性吗,java,spring,jersey,jackson,Java,Spring,Jersey,Jackson,我想在User domain的Password属性中添加@JsonIgnore of Jackson,这样我就必须能够用密码发送Json,它会将我的数据保存在数据库中,但作为响应,我不想显示密码 我怎样才能做到这一点请帮帮我 我试图在定义属性的用户的域级别使用它,但它完全忽略了getter和setter方法中的属性 我试过这个 private String password; @JsonIgnore public String getPassword() {
private String password;
@JsonIgnore
public String getPassword() {
return this.password;
}
尝试在您的课堂上同时使用和,如下所示:
private String password;
@JsonIgnore
public String getPassword() {
return password;
}
@JsonProperty
public void setPassword(String password) {
this.password = password;
}
我认为您应该使用设置/更改密码。在我的情况下,这样做很有帮助:
@JsonProperty
private String password;
@JsonIgnore
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
如果不想手动创建getter/setter(例如。 使用lombok的@Data时)
这对我不起作用()。知道为什么反序列化后字段为
null
吗?使用Lombok@TOUDIdel在我看来,Lombok只是增加了额外的依赖性。顺便说一句,你永远不应该这样做。这对一个人来说太容易了,不可能把事情搞砸。别这么简单。如果生产中断,那将是灾难性的。
@JsonProperty(access = Access.WRITE_ONLY)
private String password;