Java类到XSD
有人能告诉我什么XSD与这个Java类匹配吗Java类到XSD,java,xml,jaxb,maven-jaxb2-plugin,Java,Xml,Jaxb,Maven Jaxb2 Plugin,有人能告诉我什么XSD与这个Java类匹配吗 public class MyClass { private List<String> list1; private List<String> list2; private XMLGregorianCalendar date; // getters and setters } 公共类MyClass{ 私人名单1; 私人名单2; 私有数据日期; //接球手和接球手 } 我尝试了以下操作
public class MyClass {
private List<String> list1;
private List<String> list2;
private XMLGregorianCalendar date;
// getters and setters
}
公共类MyClass{
私人名单1;
私人名单2;
私有数据日期;
//接球手和接球手
}
我尝试了以下操作,但收到一个错误:attribute、:attributeGroup、:anyAttribute为预期错误之一:
看来我没有正确使用
标记。谁能帮我弄点光吗?(我远非XML相关方面的专家)
我使用的是Spring Boot 1.4.4.RELEASE版本和Java 7。xs:complexType中的
xs:sequence
定义了元素子元素必须出现的特定顺序。要创建元素列表,只需在要重复的xs:element
标记上直接使用minOccurs
和maxOccurs
,如下所示:
<xs:element name="myClass">
<xs:complexType>
<xs:sequence>
<xs:element name="list1" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="list2" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="date" nillable="true" type="xs:dateTime"/>
</xs:sequence>
</xs:complexType>
</xs:element>
这将创建您期望的类,并需要如下XML(标记的顺序很重要):
A.
B
Y
Z
2019-06-26T00:00:00.0000000Z
将
minOccurs
和maxOccurs
放在xs:sequence
标记上需要重复整个元素序列。谢谢,这正是我要找的
<xs:element name="myClass">
<xs:complexType>
<xs:sequence>
<xs:element name="list1" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="list2" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="date" nillable="true" type="xs:dateTime"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<myClass>
<list1>a</list1>
<list1>b</list1>
<list2>y</list2>
<list2>z</list2>
<date>2019-06-26T00:00:00.0000000Z</date>
</myClass>