我们目前正在计划一个应用程序,并希望使用Hibernate。应用程序的数据库将是在线数据库,但应用程序应该能够在脱机模式下工作。因此,您可以从数据库加载对象,关闭连接,使用对象并稍后在数据库中更新它。 现在的问题是(好吧,据我所知)每次修改对象时,Hibernate都会对数据库执行UPDATE,这意味着如果在此期间关闭连接,它会抛出异常。 我现在的问题是:可以将Hibernate配置为在某个手动指定的时间执行更新吗?
答案 0 :(得分:2)
看起来你并不完全理解Hibernate使用的Unit of Work的概念。
您可以在一个会话中加载对象,然后关闭会话,然后将该对象(或具有相同标识的另一个对象)合并到另一个会话中(以便在该新会话中刷新之间建立的对象的修改)。在此期间,可以关闭所有会话,并且可以将分离的对象用作普通对象(如果您不尝试访问其未初始化的惰性属性)。
另见: