声明性XML - > POJO转换

时间:2008-11-04 18:48:28

标签: java xml

我必须编写一个进程(在Java中),该进程定期访问URL,读取返回的XML文档,并将该数据保存到数据库中。我的应用程序进一步使用了这些数据,因此我将它们建模为Hibernate映射的POJO。

我可以解析XML然后创建适当的POJO,但我一直在寻找一种更简单的声明方法。哪些库可用于输入配置并从XML文档创建POJO?

5 个答案:

答案 0 :(得分:4)

另一种选择可能是JiBX

此外,尽管您说您不想解析XML,XPath可以是一种非常简洁的方式来提取您感兴趣的内容吗?

答案 1 :(得分:2)

JAXB可以基于XML Schema自动创建类(假设您有一个XML源代码)。然后,它可以在运行时将XML文档转换为表示XML的POJO。它是声明性的,你可以稍微调整一下Schema-to-class映射。

如果我正确理解你的任务,这几乎就是JAXB的用例(尽管它也可以做其他事情)。它是Java 1.6的一部分(也可能是1.5?),在包中:javax.xml.bind。*

答案 2 :(得分:1)

您可以使用XStream反序列化XML并将其直接映射到Hibernate映射的POJO。

干杯。

答案 3 :(得分:0)

使用Hibernate,您可以直接将XML映射到表。这是实验性功能。点击这里 http://www.hibernate.org/hib_docs/v3/reference/en-US/html/xml.html

答案 4 :(得分:0)

EclipseLink JAXB(MOXy)具有将JPA实体映射到XML的扩展(JPA实体具有嵌入式ID类,延迟加载和需要特殊处理的复合键关系等),我不知道任何其他OXM解决方案这样做。

有关详细信息,请参阅: