【发布时间】:2019-06-08 07:33:04
【问题描述】:
当我们使用 Hibernate 的 Session.get() 两次时。
示例:-
session.get();
session.get();
【问题讨论】:
-
当您提出问题时,请将解释的问题与您尝试过的代码一起提出。
当我们使用 Hibernate 的 Session.get() 两次时。
示例:-
session.get();
session.get();
【问题讨论】:
这取决于..
1)如果为特定实体打开二级缓存并且之前已检索过,则不会对数据库造成任何影响。
2) 如果两个get() 不在同一个持久性上下文中(通常意味着在同一个事务中),那么两次都会对数据库造成影响。
3) 如果两者都在同一个持久化上下文中,那么第一个get() 将访问数据库,而第二个将只查询持久化上下文而不需要查询数据库。
【讨论】: