gpt4 book ai didi

java - 不标记事务划分,只是通过session加载一个实体

转载 作者:行者123 更新时间:2023-12-01 05:22:19 24 4
gpt4 key购买 nike

hibernate :

如果我加载一个名为 session.load() 的实体并关闭 session 而不开始事务并提交

,会发生什么(出了什么问题)

我浏览了各个网站,但找不到任何好的解释。

最佳答案

Is it right to load a persisted entity from session without beginning a transaction(session.beginTransaction)

是的。没关系,但是当您从数据库获取数据时,hibernate 可能有时必须触发更新查询来刷新脏数据。因此,它更愿意在事务内运行所有与数据库相关的 Activity 。

使用交易时请按照以下步骤操作,

  1. 开始交易。
  2. 执行数据库 Activity (选择/更新)。
  3. 关闭您的交易。

Can we keep an open session (transaction committed) to help in view-Lazy loading?

你可以这样做,但这不是一个好方法。如果并发用户数较多,将会出现严重的性能问题。

关于java - 不标记事务划分,只是通过session加载一个实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10189316/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com