我必須編寫一個定期訪問URL的過程(Java語言),讀取返回的XML文檔並將該數據保存到數據庫中。這些數據被我的應用程序進一步使用,所以我將它們建模爲Hibernate映射的POJO。聲明式XML - > POJO轉換
我可以解析XML,然後創建適當的POJO,但我一直在尋找更簡單的聲明式方法。哪些庫可用於輸入配置並從XML文檔創建POJO?
我必須編寫一個定期訪問URL的過程(Java語言),讀取返回的XML文檔並將該數據保存到數據庫中。這些數據被我的應用程序進一步使用,所以我將它們建模爲Hibernate映射的POJO。聲明式XML - > POJO轉換
我可以解析XML,然後創建適當的POJO,但我一直在尋找更簡單的聲明式方法。哪些庫可用於輸入配置並從XML文檔創建POJO?
您可以使用XStream來反序列化XML並將其直接映射到Hibernate映射的POJO。
乾杯。
使用Hibernate,您可以直接將XML映射到表。這是實驗性功能。這裏檢查 http://www.hibernate.org/hib_docs/v3/reference/en-US/html/xml.html
JAXB可以自動創建基於XML模式的類(假設您有一個用於XML源)。在運行時,它可以將XML文檔轉換爲表示XML的POJO。這是說明性的,你可以稍微調整Schema-to-class映射。
如果我正確理解你的任務,這幾乎是JAXB設計的用例(儘管它也可以做其他事情)。它是Java 1.6的一部分(也許是1.5?),在包中:javax.xml.bind。*
EclipseLink JAXB(MOXy)具有用於將JPA實體映射到XML的擴展(JPA實體具有嵌入式ID類,懶惰加載和需要特殊處理的複合密鑰關係),我不知道有任何其他的OXM解決方案會這樣做。
欲瞭解更多信息,請參閱:
Upvoted,XStream的一直感到輕鬆一點比JAXB工作。 http://xstream.codehaus.org/ – Freiheit 2010-07-07 16:44:05