Java 如何将xml元素绑定到对象成员变量中?
我正在尝试使用moxy将xml解组到一个对象Java 如何将xml元素绑定到对象成员变量中?,java,xml,jaxb,unmarshalling,moxy,Java,Xml,Jaxb,Unmarshalling,Moxy,我正在尝试使用moxy将xml解组到一个对象 <root> <name> <firstname>value</firstname> </name> <address>value of address</address> </root> 现在,如何获取XML中address标记的值并将其绑定到class address的addressline变量。您需要使用a
<root>
<name>
<firstname>value</firstname>
</name>
<address>value of address</address>
</root>
现在,如何获取XML中address标记的值并将其绑定到class address的addressline变量。您需要使用
addressline
属性上的@XmlValue
注释
@XmlAccessorType(XmlAccessType.FIELD)
class Address {
@XmlValue
String addressline;
}
这是一个类似(但不完全相同)问题的答案,该问题链接在此处:
- @xmlacessortype(xmlacesstype.NONE)
吸取的教训。如果您的JAXB没有做您认为它应该做的事情,我就把它弄糊涂了。谢谢你的帮助,知道需要做什么,让我们找到我们还需要什么 谢谢你的回答。这真的很有帮助。但是如果我的Address类包含另一个名为AddressLine2的变量,并且我想将它映射到XML中作为父元素的元素,那该怎么办呢?确切地说,这是我的实际问题。@cgeek-你可以用
@XmlPath(“.”
)注释地址属性。使用Jersey的Jackson 2,我必须用Jackson的@JsonValue'注释替换@XmlValue'注释才能使其正常工作
@XmlAccessorType(XmlAccessType.FIELD)
class Address {
@XmlValue
String addressline;
}
@XmlAccessorType( XmlAccessType.NONE )
@XmlRootElement(name = "announcement")
public class Announcement
{
...
@XmlValue
public String getMessageText(){
return this.messageText;
}
}