使用ItemReader Spring Batch读取XML中节点的属性



我在

下面有一个xml
<?xml version="1.0" encoding="UTF-8"?>
<employee siteId="1">
   <name>john</name>
   <age>36</age>
</employee>

我想使用itemReader获取siteId(属性值)的值。我能够成功阅读nameage子元素。我不知道如何获得siteId的值。请帮忙。谢谢!

您可以通过在类中指定@xmlattribute(name =" siteId")来读取SiteID属性值

import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement(name = "employee")
public class Employee {
    private int siteId;
    private String name;
    private int age;

    @XmlAttribute(name = "siteId")
    public int getSiteId() {
        return siteId;
    }
    public void setSiteId(int siteId) {
        this.siteId= siteId;
    }
    @XmlElement(name = "age")
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    @XmlElement
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

最新更新