2011-04-06 59 views
3

我正在研究涉及XML流的項目,並將該數據轉換爲數據庫中的持久數據。到目前爲止,我已經到了可以使用我的web服務的地步,我生成了一些JAXB POJO,並且已經開始對XML流進行解組。JAXB解組到實體

我想弄清楚是否有辦法從XML到實體。

我知道我可以設計我的新數據庫,生成一些實體,然後將XML解壓縮到生成的POJO中,然後將POJO數據移動到實體並堅持。但這聽起來很荒謬。任何人都會給我一個提示,在哪裏尋找,我還沒有發現任何使用Google搜索的問題。我正在使用Netbeans 6.9。

+1

爲什麼不直接將POJO註釋爲實體? – ThomasRS 2011-04-06 22:48:09

回答

2

您可以創建自己的JAXB-annotated objects也是Java Persistence API(JPA)註釋的對象。使用JPA,您可以將這些對象保存到數據庫中。將JAXB和JPA註釋保留在同一個類上的好處在於,只需在該類,UI表示和關聯的XSD中對對象進行任何更改就可以在某些方面打破N層架構背後的想法。您正在有效地將您的業務邏輯與持久層合併。爲了去除重複的緣故,也許是個好主意,但偶爾你會使用@Transient@XmlTransient把只需要在XML或數據庫到類的東西,而無需他們的影響並不需要它們的領域找到自己。

所以這是可能的,但你想在權衡利弊之前做到這一點。又見this questionthis question上的取捨更多的想法(全部偏向於把兩套註釋在一個地方的一側)。

This question介紹了一些工具,以儘量減少穿梭XML,並通過JAXB數據存儲之間的數據的努力。

+0

+1,但我不同意這是業務邏輯和持久性的合併。對於混合JAXB和JPA看到的例子:http://bdoughan.blogspot.com/2010/08/creating-restful-web-service-part-35.html – 2011-04-06 23:25:07

+0

謝謝你,我需要一些很好的意見和討論,看看在這裏做什麼! – grantk 2011-04-07 12:22:46