This link (来自 Ehcache 的创建者)说当你只有一个 Hibernate SessionFactory 时应该使用 SingletonEhCacheRegionFactory,当你有多个时应该使用 EhCacheRegionFactory。
但是当您只有一个 SessionFactory 时,EhCacheRegionFactory 不会是单个实例吗?
那么,SingletonEhCacheRegionFactory 有什么更好?既然 EhCacheRegionFactory 可以用于一个或多个 SessionFactory,为什么不一直使用它呢?
仅供引用:我使用的是 Ehcache 2.4.2 和 Hibernate 3.6.5
最佳答案
非单例 EhCacheRegionFactory 允许您使用 net.sf.ehcache.configurationResourceName 属性为每个 Hibernate 实例单独配置 EHCache。 SingletonEhCacheRegionFactory 在所有 Hibernate session 工厂之间共享相同的 EHCache 配置。
EHCache documentation recommends使用非单例版本。
编辑:此信息适用于 EHCache 2.8。不确定最新版本中发生了多少变化。
关于java - SingletonEhCacheRegionFactory 与 EhCacheRegionFactory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6615790/