2011-03-17 100 views
1

我們目前正在計劃一個應用程序,並希望使用Hibernate。應用程序的數據庫將成爲在線數據庫,但應用程序應能夠以離線模式工作。因此,您可以從數據庫加載對象,關閉連接,使用對象進行遊戲,稍後可能會在數據庫中進行更新。 現在的問題是(就我所知),每次修改對象時,Hibernate都會對數據庫執行UPDATE,這意味着如果連接在此期間關閉,它會拋出異常。 我現在的問題是:Hibernate可以配置爲在手動指定的時間執行更新嗎?休眠,在線數據庫和更新

回答

2

看起來你並不完全理解Hibernate使用的Unit of Work的概念。

您可以在一個會話中加載對象,然後關閉會話並稍後將該對象(或具有相同標識的另一個對象)合併到另一個會話中(以便修改其間創建的對象將在該新會話中刷新會話)。在此期間,所有會話都可以關閉,並且分離的對象可以用作普通對象(如果您不嘗試訪問其未初始化的惰性屬性)。

參見: