2011-10-13 31 views
3

我们已经要求将XML文件发送到另一个系统。我在看这个例子(它使用JAXB)。如何将多个POJO转换为所需格式的xml?

http://thomassundberg.wordpress.com/2010/01/19/how-to-convert-a-pojo-to-xml-with-jaxb/

然而,这一个转换仅单个POJO为xml而我们有多个POJO例如汽车/车轮/座椅等应该出现在XML中。

关于如何实现这一点的任何想法?

例如我想有这样的最后输出

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<car registration="abc123"> 
    <brand>Volvo</brand> 
    <description>Sedan</description> 

    <wheel> 
     <brand>Ceat</brand>  
    </wheel> 
</car> 

回答

2

这听起来像你想的Java的图形转换对象到XML,这JAXB能做到。图中的每个对象都应该有JAXB注释。见http://numberformat.wordpress.com/2009/11/01/using-jaxb-to-convert-between-xml-and-pojos/

+1

+1 - JAXB是异常配置。这意味着你只需要提供注释来定制默认行为:http://wiki.eclipse.org/EclipseLink/Examples/MOXy/GettingStarted –

+1

谢谢Blaise/spork ...链接上提到的示例解释了我正在寻找的内容对于。 - – Prabhjot

1

Castor来救援。

该链接曾经是castor.org。 该网站似乎已消失。 链接最新的马特鲍尔的赞美(见下面的评论)。

Castor Intro Info

+0

有没有什么,男人...... –

+0

看起来像Castor.org是没有更多。 New link added – DwB

+0

它看起来像是Castor的新家:http://castor.codehaus.org –

2

如果您有同一POJO类的多个实例,您可以创建它们的List并将其转换为XML,记住您需要将列表包装在根元素中。

如果您有多个POJO类,那么您可以创建一个包装类来容纳它们并将其转换为XML。

+0

+1。我正在建议的。 – FloppyDisk