xStream 从列表检索时复制数据

发布于 2024-11-11 08:54:02 字数 756 浏览 3 评论 0原文

我正在做一个用 xml 编写的测试程序。 我有 3 个课程:人员、电话和城市。

在 Person 类中,我有一些对象,例如传真、手机类型的电话。 城市也反对。

我有一个名为 Persons 的第四个类...它是一个具有 Person 类型列表的类。

private List<Person> persons = new ArrayList<Person>();

在主类中,我设置属性并将 Person 对象添加到列表中。 但是,当我执行以下操作时:

String xml = xstream.toXml(persons);

xml 出现重复...如下所示:

<persons>
   <persons>
      <person>
         ...
      </person>
   </persons>
</persons>

它在 Person 对象中添加了 Person 对象,但它添加了第二个对象 Person。

必要的 XML 是:

<persons>
   <person>
       ...
   </person>
</persons>

有人可以帮助我吗?

抱歉英语不好。我是巴西人。

I'm doing a test program to write in a xml.
I have 3 classes: Person, Telephone and City.

And in the Person class, I have some objects like fax, cellular of type telephone.
And too Cities objects.

I have a 4th class named Persons... it is a class that have a List of type Person.

private List<Person> persons = new ArrayList<Person>();

In a main class I set the attributes and add a Person object to the list.
but, when I do the follow line:

String xml = xstream.toXml(persons);

The xml appears duplicated... like this:

<persons>
   <persons>
      <person>
         ...
      </person>
   </persons>
</persons>

It adds the Person object in the persons object, but it adds in a second object persons.

The necessary XML is:

<persons>
   <person>
       ...
   </person>
</persons>

Someone can help me?

And sorry for the bad English. I'm Brazilian.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

东走西顾 2024-11-18 08:54:02

请尝试给我们一个独立的例子。我的猜测是,您可能需要告诉 XStream 将“persons”字段(类型为 List)设置为“隐式”。您可以使用 Java 方法调用或注释来完成此操作。请参阅addImplicitCollection() (例如)和 XStream 注释教程

Please try to give us a self-contained example. My guess is that you may need to tell XStream to make the "persons" field (with type List) "implicit". You can do this using Java method calls or annoations. See addImplicitCollection() (for example) and the XStream Annotations Tutorial.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文