我为数据库表创建了一个JPA实体。有一个布尔字段“ isPreferred”。如果我得到表的条目,则答案中有重复的字段。 一个带有“ preferred” = true,另一个带有“ isPreferred” = true。 我希望只有isPreferred字段。我该如何解决这个问题?
我已经尝试使用布尔包装器类。 还尝试使用诸如isPreferred和isIsPreferred / setPreferred和setIsPreferred之类的setter。
import javax.persistence.*;
import javax.xml.bind.annotation.XmlElement;
@Entity
public class Address {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String street;
private String houseNr;
private String zip;
private String city;
private String country;
@XmlElement(name = "isPreferred")
private boolean preferred;
...getters/setters...
public boolean isPreferred() {
return preferred;
}
public void setPreferred(boolean isPreferred) {
this.preferred = isPreferred;
}
}
我希望响应中只有一个布尔值字段。只有“ isPreferred”字段, 但实际上我得到了首选,并且是isPreferred:
"addresses": [
{
"zip": "12345",
"country": "DEU",
"city": "Köln",
"street": "Hauptstr.",
"isPreferred": true,
"houseNr": "1",
"type": "homeAddress",
"preferred": true
}
],
答案 0 :(得分:2)
我认为您基本上有两种选择:
@XmlAccessorType(XmlAccessType.FIELD)
注释班级@XmlElement(name = "isPreferred")
放在字段的设置器上当前,您正在使用getter创建第二个字段。
答案 1 :(得分:0)
如果我调试响应方法,则只会看到一个像预期的那样的字段,但是在邮递员响应中,我有2个布尔字段: debugger view with Response.ok(getAddresses()).build()