使用jaxb将属性转换为java对象的xml

使用jaxb将属性转换为java对象的xml,java,xml,jaxb,Java,Xml,Jaxb,我有一个如下所示的xml: <response> <adminArea5 type="City">Rochester</adminArea5> <adminArea3 type="State">NY</adminArea3> <adminArea4 type="County">Monroe County</adminArea4> <adminArea

我有一个如下所示的xml:

<response>
    <adminArea5 type="City">Rochester</adminArea5>
    <adminArea3 type="State">NY</adminArea3>
    <adminArea4 type="County">Monroe County</adminArea4>             
    <adminArea1 type="Country">US</adminArea1>
</response>
我使用“JAXB.unmarshal(新StringReader(xml),targetClass)”将xml解析为java对象。
但这些字段在解析xml后为空。任何帮助都将不胜感激。

更新您的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之间的差异,如下更新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文件并生成一个模式,然后生成java类。在项目中创建一个XML文件,右键单击该XML文件并生成一个模式,然后生成java类。属性
类型如何
?属性
类型如何