如何使用JAXB将复杂的XML元素映射到Java类属性
我需要使用JAXB将XML片段映射到Java类,但有一个棘手的例子。我有以下XML:如何使用JAXB将复杂的XML元素映射到Java类属性,java,xml,binding,jaxb,Java,Xml,Binding,Jaxb,我需要使用JAXB将XML片段映射到Java类,但有一个棘手的例子。我有以下XML: <person> <name part="first">Richard</name> <name part="last">Brooks</name> </person> 您能帮我找出JAXB注释使之成为可能吗?这里是一种您可以采取的方法,但需要您为名称创建一个单独的类: @XmlRootElement public class P
<person>
<name part="first">Richard</name>
<name part="last">Brooks</name>
</person>
您能帮我找出JAXB注释使之成为可能吗?这里是一种您可以采取的方法,但需要您为名称创建一个单独的类:
@XmlRootElement
public class Person {
@XmlElement(name="name")
private List<Name> names;
...
}
public class Name {
@XmlAttribute
private String part; //would be set to "first" or "last"
@XmlValue
private String nameValue;
...
}
@XmlRootElement
公共阶层人士{
@xmlement(name=“name”)
私人名单名称;
...
}
公共类名{
@XmlAttribute
私有字符串部分;//将设置为“first”或“last”
@XmlValue
私有字符串名称值;
...
}
您可以使用,请参阅
相关问题:
@XmlRootElement
public class Person {
@XmlElement(name="name")
private List<Name> names;
...
}
public class Name {
@XmlAttribute
private String part; //would be set to "first" or "last"
@XmlValue
private String nameValue;
...
}
@XmlPath("name[@part='first']/text()")
private String firstName;
@XmlPath("name[@part='last']/text()")
private String lastName;