【问题标题】:Do I understand Persistent Context right?我理解持久上下文对吗?
【发布时间】:2021-07-21 06:07:53
【问题描述】:

实体管理器是一个包装器,被休眠会话用于持久化对象。 Session 有一个 Persistent Context,它在其中保存对象(如在缓存中)。 每次事务结束/开始时都会关闭并创建会话。事务处理后清除缓存。 这被 Hibernate 称为 1 级缓存。

如果您能告诉我我是否理解正确,我将不胜感激。

【问题讨论】:

    标签: hibernate


    【解决方案1】:

    希望这本书对您有所帮助,值得。

    参考: James Elliot、Tim O'Brien、Ryan Fowler 的“Harnessing Hibernate”,第 49 页

    在亚马逊上找到它: https://www.amazon.com/Harnessing-Hibernate-Step-step-Persistence/dp/0596517726/

    ...“在实际执行持久化时,我们要求 SessionFactory 为我们打开一个 Session,它建立与数据库的 JDBC 连接,并为我们提供一个上下文,我们可以在其中创建、获取、操作,并删除持久对象。只要会话打开,就会保持与数据库的连接,并跟踪与会话关联的持久对象的更改,以便在会话关闭时将它们应用于数据库。从概念上讲,您可以将会话视为持久对象和数据库之间的“大规模事务”,它可能包含多个数据库级事务。但是,与数据库事务一样,您不应该考虑长时间保持 Hibernate 会话打开应用程序存在的时间(例如您正在等待用户输入的时间)。单个会话用于应用程序中的特定和有界操作,例如填充用户界面或创建通道用户犯下的愤怒。” ...

    此外,您可能会发现此文档也很有帮助。

    实体管理器: https://docs.jboss.org/hibernate/entitymanager/3.6/reference/en/html/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-04
      • 2022-10-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多