Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java类到XSD_Java_Xml_Jaxb_Maven Jaxb2 Plugin - Fatal编程技术网

Java类到XSD

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; 私有数据日期; //接球手和接球手 } 我尝试了以下操作

有人能告诉我什么XSD与这个Java类匹配吗

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>