1
原來我所有的實體都在一個數據庫中。例如我有2個表/類:A和B,hibernate Dao對外部數據庫的引用?
A與B有一對一的映射,所以我們可以做A.getB()。這會在B表上生成一個查詢。
現在讓我們說我們的數據庫變得過於擁擠/繁忙,並且我們發現B表非常大,但很少訪問,所以我們將B移動到另一個表(或者甚至是另一個數據存儲,例如noSQL) 。現在我的問題是,如何維護由hibernate提供的簡單對象圖遍歷?
最初,我可以拉一個A對象:A a = DaoForA.get(id_for_a);那麼我可以在不考慮底層數據庫操作的情況下執行a.getB(),就好像一切已經在內存中一樣。現在將B表移動到另一個數據庫,是否仍有可能實現這種透明遍歷?我認爲應該在映射標記中更改A.hbm.xml,因爲B表不再存在,所以A.hbm.xml不知道存在B,所以這種自動檢索不能完成?
非常感謝 楊