Java 如果未执行JAXB模型中的setter,则不显示XML元素

Java 如果未执行JAXB模型中的setter,则不显示XML元素,java,xml,rest,jaxb,boolean,Java,Xml,Rest,Jaxb,Boolean,给出了以下JAXB模型: @XmlRootElement(name = "Customer") @XmlAccessorType(XmlAccessType.FIELD) public Customer { @XmlElement(name = "Name") private String name; @XmlElement(name = "IsVerified") private boolean isVerified; // Setter and gette

给出了以下JAXB模型:

@XmlRootElement(name = "Customer")
@XmlAccessorType(XmlAccessType.FIELD)
public Customer {

   @XmlElement(name = "Name")
   private String name;

   @XmlElement(name = "IsVerified")
   private boolean isVerified;

   // Setter and getter for both attributes

}
我使用这个模型以XML(GET-request-returns-application/XML)的形式显示REST资源。
如果未使用适当的设置器设置
name
isVerified
,则XML元素
name
将不会显示在资源中,但
isVerified
将出现,且值为
false
。如果未执行元素的setter,是否也可以不显示元素
IsVerified
加上nillable

@XmlElement(name = "IsVerified", nillable='true')

添加nillable=true后,元素IsVerified仍然显示。您确定它设置为null吗?对不起,这是我的错误。用布尔值代替布尔值就行了。谢谢!从概念上讲,如果您不想在输出中显示默认值,就不应该使用原语,而是使用包装类,因为它们是用NULL初始化的。