XMLElement @ required = true的含义

sat*_*esh 13 cxf jax-ws

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

Cod*_*ber 13

@XMLElement(required=true)
Run Code Online (Sandbox Code Playgroud)

在XML模式中生成这样的东西:

<xs:element name="city" type="xs:string" minOccurs="1"/>
Run Code Online (Sandbox Code Playgroud)

这意味着元素和值是必需的.默认值为false.

这个:

@XMLELement(nillable=true)
Run Code Online (Sandbox Code Playgroud)

在XML模式中生成这样的东西:

<xs:element name="city" type="xs:string" nillable="true"/>
Run Code Online (Sandbox Code Playgroud)

这意味着您可以在XML中传递nil值,如下所示:

<city xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
Run Code Online (Sandbox Code Playgroud)

将这两者结合起来:

@XMLELement(nillable=true, required=true)
Run Code Online (Sandbox Code Playgroud)

给出类似于这样的XML模式定义:

<xs:element name="city" type="xs:string" nillable="true"/>
Run Code Online (Sandbox Code Playgroud)

这意味着该元素是必需的,但您可以传入一个nil值.


Pau*_*nis 5

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

minOccurs指示符指定元素可以出现的最小次数。如果模式中的元素具有minOccurs="1"属性,则意味着该元素是强制性的。它必须出现在XML文档中。