带有jaxb的java对象属性的xml



我有一个类似以下的xml:

<response>
<adminArea5 type="City">Rochester</adminArea5>
<adminArea3 type="State">NY</adminArea3>
<adminArea4 type="County">Monroe County</adminArea4>             
<adminArea1 type="Country">US</adminArea1>
</response>

Java类:

public class Response{
private String street;
@XmlAttribute(name = "adminArea5")
private String city;
@XmlAttribute(name = "adminArea3")
private String state;
@XmlAttribute(name = "adminArea4")
private String county;
@XmlAttribute(name = "adminArea1")
private String country;
}

我使用"JAXB.unmarshal(new StringReader(xml(,targetClass("将xml解析为java对象。但在解析xml后,这些字段为null。任何帮助都将不胜感激。

按照更新Java类

@XmlRootElement(name = "response")
@XmlAccessorType(XmlAccessType.PROPERTY)
public class Response {
private String street;
@XmlElement(name = "adminArea5")
private String city;
@XmlElement(name = "adminArea3")
private String state;
@XmlElement(name = "adminArea4")
private String county;
@XmlElement(name = "adminArea1")
private String country;
@Override
public String toString() {
return "Response{" +
"street='" + street + ''' +
", city='" + city + ''' +
", state='" + state + ''' +
", county='" + county + ''' +
", country='" + country + ''' +
'}';
}
}

还检查XmlElement和XmlAttribute XML属性与XML元素之间的差异

最新更新