Java JaxB将多个XML类型映射到单个类

Java JaxB将多个XML类型映射到单个类,java,jaxb,Java,Jaxb,如何将两个名称不同但内容相同的XMLTypes映射到一个Single类。 从XSD生成的模型如下所示。我想介绍一个新的类的人,可以有XMLType卖方和买方 @XmlType(name = "Seller") public class Seller { private Sting name; private Adress adress; .... @XmlType(name = "Buyer") public class Buyer { private Sting n

如何将两个名称不同但内容相同的XMLTypes映射到一个Single类。 从XSD生成的模型如下所示。我想介绍一个新的类的人,可以有XMLType卖方和买方

@XmlType(name = "Seller")
public class Seller {
   private Sting name;
   private Adress adress;
   ....


@XmlType(name = "Buyer")
public class Buyer {
   private Sting name;
   private Adress adress;
   ....
这就是我的xsd在使用时的样子:

<xs:complexType name="Business">
    <xs:sequence>
        <xs:element name="vendor" type="ram:Seller" form="unqualified" minOccurs="0"/>
        <xs:element name="customer" type="ram:Buyer" form="unqualified" minOccurs="0"/>
    </xs:sequence>  
</xs:complexType>

定义如下

<xs:complexType name="Seller">
    <xs:sequence>
        <xs:element name="name" type="udt:SType" form="unqualified" minOccurs="0"/>
        <xs:element name="address" type="udt:SType" form="unqualified" minOccurs="0"/>
    </xs:sequence>
</xs:complexType>

我想可以通过使用XML适配器来解决这个问题。但这将导致需要维护4个类,而不是现在的2个

有没有办法让我只上一节课

希望这能有所帮助

public class Person {
private String name;
private Address address;
//getters & setters

}


卖方和买方的情况如何?如果我省略它,它会工作吗?显然,XMLTypes并不像我一开始所想的那样是必要的。这可以通过bindings.xml文件指定吗?不是通过修改java代码?
@XmlAccessorType(XmlAccessType.FIELD)
public class Business {
@XmlElement(name="buyer")
private Person buyer;
@XmlElement(name="seller")
private Person seller;
//getters & setters

}