我有以下代码:
@XmlRootElement(name = "foo")
@XmlAccessorType(XmlAccessType.FIELD)
public class Foo
{
@XmlElement
private String id;
...
}
我希望能够编码 Set<Foo> foos
进入:
<foos>
<foo>
<id>bar1</id>
</foo>
<foo>
<id>bar2</id>
</foo>
</foos>
我需要一个包装类吗?如果是这样,它应该是什么样子?我的注释正确吗?编码代码应该是什么样的(如果您能说明这一切,我们将不胜感激)?
最佳答案
如果你想封装任何集合,请使用 XmlElementWrapper
@XmlElementWrapper(name="foos")
@XmlElement(name="foo")
private Set<Foo> foos;
顺便说一句,您不能直接编码 Set,因此您必须将 Set 包含在您自己的类中。因此,如果您只想编码一组 Foo,则必须编写这样的 bean:
@XmlRootElement(name = "foos")
public class Foos {
@XmlElement(name="foo")
private Set<Foo> foo;
}
关于java - 如何使用 jaxb 编码集合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26740338/