15

这是否意味着 XML 元素是强制性的?或者 XML 元素必须有一些非空值?我对javadoc的解释感到非常困惑。

4

2 回答 2

17
@XMLElement(required=true)

在 XML 模式中生成类似这样的内容:

<xs:element name="city" type="xs:string" minOccurs="1"/>

这意味着元素和值是强制性的。默认值为假。

这个:

@XMLELement(nillable=true)

在 XML 模式中生成类似这样的内容:

<xs:element name="city" type="xs:string" nillable="true"/>

这意味着您可以像这样在 XML 中传递一个 nil 值:

<city xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>

像这样将两者结合起来:

@XMLELement(nillable=true, required=true)

给出与此类似的 XML 模式定义:

<xs:element name="city" type="xs:string" nillable="true"/>

这意味着该元素是强制性的,但您可以传入一个 nil 值。

于 2012-11-13T23:15:18.460 回答
3

如果 required() 为真,则 Javabean 属性将映射到具有 minOccurs="1" 的 XML 模式元素声明

minOccurs指标指定元素可以出现的最小次数。如果架构中的元素具有minOccurs="1"属性,则这意味着该元素是必需的。它必须出现在XML文档中。

于 2012-10-04T15:35:57.790 回答