簡體   English   中英

如何使用JAXB序列化多個對象

[英]How do I serialize multiple objects with JAXB

我正在嘗試序列化具有特定格式的對象列表。 XML結構將為:

<doc>
    <data>
       <item>
          ... object properties go here ...
       </item>
    </data>
</doc>

到目前為止,我已經使元素的整個結構正常工作,但是下面的代碼會將其創建為XML文檔本身,我需要能夠遍歷數組並將它們全部添加到上述結構中。

JAXBContext context = JAXBContext.newInstance(Concern.class);

JAXBElement<Concern> jaxbElement = new JAXBElement(new QName("item"), Concern.class, concerns.get(0));
Marshaller m = context.createMarshaller();

StringWriter sw = new StringWriter();
m.marshal(new JAXBElement(new QName("item"), Concern.class, concerns.get(0)), sw);

謝謝你的幫助。

您需要表示“ doc”和“ data”標簽的類(例如Doc和Data)。 然后創建一個Doc實例,向其中添加一個Data實例,最后將所有Concern實例添加到該Data實例中。 然后封送Doc實例。

您可以執行以下操作:

@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class Doc {

    @XmlElementWrapper(name="data")
    @XmlElement(name="item")
    private List<Concern> concerns;

}

欲獲得更多信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM