@XmlElement注釈には、 XML 要素が必要であること ( > 0)requiredを示すために使用されるプロパティ (デフォルトでは false) があります。minOccursAPI を使用してjava.lang.reflect、クラスからこの値を取得できます。
XML スキーマ
以下の XML スキーマでは、foo要素は必須ですが、要素は必須でbarはありません。
<?xml version="1.0" encoding="UTF-8"?>
<schema
xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.example.org/schema"
xmlns:tns="http://www.example.org/schema"
elementFormDefault="qualified">
<complexType name="root">
<sequence>
<element name="foo" type="string"/>
<element name="bar" type="string" minOccurs="0"/>
</sequence>
</complexType>
</schema>
生成されたクラス
以下は、XML スキーマから生成されたクラスです。fooフィールドには注釈が付けられており@XmlElement(required=true)、フィールドには注釈が付けられていないことがわかりbarます。
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "root", propOrder = {
"foo",
"bar"
})
public class Root {
@XmlElement(required = true)
protected String foo;
protected String bar;
}