您可以使用 JAXB 创建 XML 文件的对象表示。这里的“NewDataSet”元素包含一个子(表)元素列表。使用 JAXB,您可以创建一个“NewDataSet”实例,该实例又包含一个“Table”对象列表。然后您可以遍历列表以获取每个“表”的“国家”和“城市”的值。您可以这样做:
这将代表 XML 的“表”元素。
@XmlRootElement
public class Table {
private String country;
private String city;
// getters and setters
}
这是您的“NewDataSet”,其中包含“表”元素列表:
@XmlRootElement
public class NewDataSet {
private List<Table> tableList;
public List<Table> getTableList() {
return tableList;
}
@XmlElementWrapper(name = "NewDataSet")
@XmlElement(name = "Table")
public void setCustomerList(List<Table> tableList) {
this.tableList =tableList;
}
}
现在使用 JAXB unmarshaller,您可以创建“NewDataSet”的实例:
JAXBContext jaxbContext = JAXBContext.newInstance(NewDataSet.class);
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
StringReader reader = new StringReader("your xml as string");
NewDataSet newDataSet = (NewDataSet) unmarshaller.unmarshal(reader);
参考:用于 XML 绑定的 Java 架构 (JAXB)