如果我有一个对象列表
@XmlRootElement(name = "get_item")
public class GetItem {
private List<Image> images;
}
即使我需要为 imgurl、imgcap、imgpurl 创建其他三个类,我几乎可以用 Images 类做任何事情
我想生成如下所示的 xml:
<?xml version=“1.0”?>
<get_item>
.......snip.......
<imgpurl1>purl 1</imgpurl1>
<imgurl1>url 1</imgurl1>
<imgcap1>caption 1</imgcap1>
<imgpurl2>purl 2</imgpurl2>
<imgurl2>url 2</imgurl2>
<imgcap2>caption 2</imgcap2>
…
<imgpurlN>purl N</imgpurlN>
<imgurlN>url N</imgurlN>
<imgcapN>caption N</imgcapXN>
</get_item>
没有办法知道会有多少 img(s)。我想将它们全部放在一个列表中,然后让它输出我需要的三个元素。有没有办法用 Jaxb 做到这一点?
我尝试与 Eclipses Jaxb 生成器一起使用的模式如下所示:
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="get_item">
<xs:complexType>
<xs:sequence>
<xs:element type="xs:string" name="title" />
<xs:element type="xs:string" name="time" />
<xs:element type="xs:string" name="date" />
<xs:sequence>
<xs:element type="xs:anyURI" name="imgpurl" minOccurs="0" maxOccurs="unbounded" />
<xs:element type="xs:anyURI" name="imgurl" minOccurs="0" maxOccurs="unbounded" />
<xs:element type="xs:string" name="imgcap" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
我主要关心的是能够像提供的示例一样序列化 xml……最好的方法是什么?有没有办法控制 Jaxb 编组对象的方式?