【发布时间】:2014-09-15 10:51:05
【问题描述】:
我的根元素对象中有两个列表。
List<Person> 人员和 List<Address> 地址。当我整理这个时,它首先打印所有的人,然后是所有的地址。我要一张一张打印出来。人接地址、人与地址等等。我怎样才能在 JAXB 中做到这一点?
【问题讨论】:
标签: java jaxb xml-binding
我的根元素对象中有两个列表。
List<Person> 人员和 List<Address> 地址。当我整理这个时,它首先打印所有的人,然后是所有的地址。我要一张一张打印出来。人接地址、人与地址等等。我怎样才能在 JAXB 中做到这一点?
【问题讨论】:
标签: java jaxb xml-binding
您可以使用@XmlElements 或@XmlElementRefs。
假设Person 既不扩展Address 也不反之亦然,代码将类似于:
@XmlElements {
@XmlElement(name="Person", type=Person.class),
@XmlElement(name="Address", type=Address.class)
}
private List<Object> personOrAddress;
但是考虑将它改造成一个特殊的类型,比如PointOfContact,这样你就没有异类属性了。
【讨论】: