我們目前有以下任務,我正在努力尋找我認爲應該在哪裏的地方。Hibernate寫入XML數據庫
datamodel通過Hibernate存儲在MySQL中。一切工作正常,產品出貨。
對於計劃的未來版本,儘管需要更改數據模型。我們還不知道發生了什麼變化,發生了多大的變化,但我們確實知道客戶數據庫必須相應更新。
這很可能會再次對未來的版本中,這使我分手問題的一個未來版本發生:
- 是否合理通過轉換現有的數據庫內容來解決這個問題,通過他們出口到一個XML文件,基於它們已經創建的Hibernate版本,然後在用更新的Hibernate版本重寫數據庫內容之前更新內容(使用XSLT的f.ex.)?
我可以看到這種方法的優點如下:
- 我們必須一次寫一個XSLT新版本。
- 我們可以很容易地將其應用於所有客戶 - 甚至是自動化的。
- 通過鏈接相應的XSLT,我們可以輕鬆地將數據庫內容從版本X轉換爲版本Y,即使存在多個版本。
但是,假設採用這種方法,實際的問題是我們不希望編寫額外的代碼來生成相應的XML文件。最好,我想使用一個數據庫,它的內容存儲在一個XML文件中,並提供一個JDBC接口。有沒有人知道如何以最小的努力實現這一目標?
工作流程我心目中是以下幾點:
- 從版本X.使用Hibernate的數據模型創建兩個數據庫連接,一個MySQL數據庫,一個XML DB。從第一個中讀出所有內容,將其轉儲到後面(這可能需要一些自定義代碼)
- 編寫XSLT,在XML DB的XML文件上執行它。
- 使用版本Y的Hibernate數據模型創建兩個數據庫連接,一個連接MySQL DB,一個連接XML DB。從XML讀出所有內容並將其轉儲回MySQL。
可行嗎?有沒有更好的方法來解決這個問題?我在哪裏可以找到一個支持JDBC的XML數據庫?
謝謝。這幾乎是我所期待的。還不完全,但肯定值得進一步探討。 – Frank