ehcache是​​hibernate的第二个lvl缓存事务吗?

时间:2012-11-14 05:55:18

标签: hibernate ehcache

我的实体标有

@Cache(usage = CacheConcurrencyStrategy.TRANSACTIONAL)

并运行应用程序(不确定如何验证实体是否已实际缓存)。

Spring环境中的Hibernate配置:

<prop key="hibernate.cache.use_second_level_cache">true</prop>
<prop key="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</prop>

现在,如果将缓存从ehcache更改为infinispan,我会收到一个异常,说明这是一个事务缓存,但没有找到任何事务管理器。

因此我的问题是:ehcache实际上是交易性的吗?

2 个答案:

答案 0 :(得分:0)

从发行版2.1开始,Ehcache支持事务性缓存......但是你确实意识到(任何)使用Hibernate的事务缓存需要一个完整的JTA环境?

答案 1 :(得分:-1)

据我所知,EH Cache不是事务性的。请参阅下面的hibernate本身链接。它还说EH Cache是​​非事务性的。 JBoss Cache是​​我所知道的事务。

http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/performance.html#performance-cache