【发布时间】:2017-07-09 18:20:13
【问题描述】:
可以禁用休眠一级缓存吗?
万一它不能被禁用,有什么解决方法吗?
【问题讨论】:
-
没有配置可以禁用它。您需要在选择/更新后模拟删除实体(使用
evict)等行为,或使用clear清理缓存。 -
你为什么觉得你需要那个?您是否使用与 session-per-request 不同的策略?
可以禁用休眠一级缓存吗?
万一它不能被禁用,有什么解决方法吗?
【问题讨论】:
evict)等行为,或使用clear 清理缓存。
Hibernate 一级缓存与 Session 对象相关联。 Hibernate 一级缓存默认开启,没有办法关闭。 然而,hibernate 提供了一些方法,通过这些方法我们可以从缓存中删除选定的对象或完全清除缓存。 一个会话中缓存的任何对象都不会被其他会话看到,当会话关闭时,所有缓存的对象也将丢失。
【讨论】:
However hibernate provides methods through which we can delete selected objects from the cache or clear the cache completely. - 你能提供这些方法的名称/详细信息吗?