嗨,我需要使用jaxb创建以下xml,但是由于它有许多父子关系,我不想创建那么多类来创建xml。任何人都可以告诉我如何在单个类的帮助下生成这个xml。。。
<Info>
<details>
<arrange>
<name>joseph</name>
<ID>12</ID>
<Date>2012-03-25T11:23:42+10:00</Date>
<LatestDate>
<Start>2012-06-25T09:24:59+10:00</Start>
<End>2013-06-25T09:24:59+10:00</End>
</LatestDate>
<Additional>
<name>IVR</name>
</Additional>
</arrange>
</details>
</Info>
4条答案
按热度按时间wgx48brx1#
注意:我是EclipselinkJAXB(moxy)的负责人,也是jaxb(jsr-222)Maven组的成员。
因为您希望用一个类Map到xml,所以可以使用moxy的
@XmlPath
扩展(见:http://blog.bdoughan.com/2010/07/xpath-based-mapping.html).信息
jaxb.properties属性
要将moxy指定为jaxb提供程序,需要包含一个名为
jaxb.properties
在与域模型相同的包中,包含以下条目(请参阅:http://blog.bdoughan.com/2011/05/specifying-eclipselink-moxy-as-your.html).演示
input.xml/输出
kxxlusnw2#
@XmlElementWrapper
要完成这项工作,您必须编写一个类,并用它的 Package 元素定义每个元素,正如您在这里看到的:jaxb将多个xml元素解包到一个类中pbpqsu0x3#
必须向类中添加所需的jaxb注解。
然后您将能够解析xml文件并获得java对象。
beq87vna4#
编写一个xsd并使用jaxb的xjc代码生成器来创建类。