如何将两个xml元素组合成一个使用xsd生成的JAXB类

时间:2018-01-09 10:59:27

标签: java xml xsd jaxb

我正在使用这样的一些xsd。这将生成一个包含两个字段name1和name2的类。 我想要的是通过组合两个字段来生成一个带有一个字段completeName的类。

<xs:element name="person">
    <xs:complexType>
         <xs:sequence>
             <xs:element name="firstName" type="xs:string"/>
             <xs:element name="lastName" type="xs:string"/>
         </xs:sequence> 
    </xs:complexType>   
</xs:element>

1 个答案:

答案 0 :(得分:0)

您可以将@XmlValue或@XmlAttribute Annoation移动到setter方法并在那里自定义您的setter。但是,在你的情况下,将两个值原子存储在两个单独的字段中并且在你的jaxb类中有一个自定义的“getCombinedName”方法可能更有意义。

public String getCombinedName() {
  return firstName + " " + lastName;
}