5

我想从一个对象列表创建一个 XML 文件。对象具有一些属性,因此标签将是属性名称,相应的数据将在标签内。

这是示例:

我有一个 List myEquipmentList,其中包含该类的 100 个对象Equipment。现在,类中的属性Equipment是 id、name、size、measures、unit_of_measure 等。

现在我想创建类似于这样的 XML。

<Equipment id=1>``
<name>Ruler</name>
<size>1000</size>
<measures>length</measures>
<unit_of_measure>meter</unit_of_measure>
</Equipment>

有任何想法吗?

4

4 回答 4

4

您可以使用对象列表创建一个类,然后将列表序列化为 xml,最后将 xml 反序列化为列表。

请参阅此链接 - 非常有用: 如何使用 XStream 将对象列表转换为 XML 文档

于 2012-07-13T11:41:37.293 回答
4

阅读有关 JAXB 的信息。

你可以有一个这样的类来生成你想要的 XML:

@XmlRootElement
public class Equipment {
  private Long id;
  private String name;
  private Integer size;
  ...etc...

  @XmlAttribute
  public Long getId() {
     return id;
  }

  public void setId(Long id) {
     this.id = id;
  }

  @XmlElement
  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  ... etc...

}

你会在谷歌上找到大量关于在 stackoverflow 上搜索的 JAXB 信息。

http://jaxb.java.net/

http://jaxb.java.net/tutorial/

这些看起来像几个简单的教程:

http://www.mkyong.com/java/jaxb-hello-world-example/

http://www.vogella.com/articles/JAXB/article.html

于 2012-07-13T11:51:15.813 回答
1

执行此操作的最简单方法之一是简单地遍历列表并使用字符串来编写 XML。没什么特别的,非常快速和容易。

于 2012-07-13T11:39:22.753 回答
0

我倾向于使用一个名为Simple XML Serialization over JAXB 的库,我不得不说它非常简单,而且非常灵活。

Simple 和 JAXB 之间有很好的比较。

于 2012-07-13T13:20:27.683 回答