[英]How could I ignore a field in json response?
@Column(name = "password", nullable = false)
@JSonIgnore
private String password;
我在我的模型類中給出了上面的字段,但它對POST方法不起作用。
錯誤:“password”列中的空值違反了非空約束
僅在getter方法上添加@JsonIgnore。
@Column(name = "password", nullable = false)
private String password;
@JsonIgnore
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
要么
@JsonProperty(access = Access.WRITE_ONLY)
@Column(name = "password", nullable = false)
private String password;
我解決了這個問題。 這是我的舊代碼: @Column(name = "password", nullable = false)
`@JSonIgnore`
`private String password;`
我們可以使用JSonProperty代替JSonIgnore。 以下是代碼:
這是新代碼: @Column(name = "password", nullable = false)
@JsonProperty(access = Access.WRITE_ONLY)
private String password;
感謝大家的幫助......
您已將字段設置為nullable = false
- 這意味着密碼不能為空,因此某些代碼驗證不允許您將空值傳遞給password
。
我想你正在混淆請求和回復:
如果要在不發送密碼的情況下使POST數據有效,則需要創建一個可以與密碼分開保存的對象。 這可以是一個可保存的超類,其中子類只有密碼,或者只是另一個與另一個擁有密碼字段的類有關系的類。
如果您不想要單獨的類,則必須將密碼添加到請求中,或者將@Column注釋中的nullable屬性更改為true。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.