ehcache第三次接触

想不到自己的ehcache是1.5版 最高的都到2.4版了

发现hibernate3.3对二级缓存的实现加强了。采用新的实现

<prop key="hibernate.cache.use_second_level_cache">true</prop>

<prop key="hibernate.cache.use_query_cache">true</prop>

<prop key="hibernate.cache.region.factory_class">net.sf.ehcache.hibernate.EhCacheRegionFactory</prop>

<prop key="net.sf.ehcache.configurationResourceName">/ehcache-class.xml</prop>

ehcache的分支用到的分为2块 hibernate+web 

2块应该来说没什么关系,hibernate的话spring3.1支持annotation方式更方便的使用缓存

@Cacheable(value = "findPageCache")

@CacheEvict(value = "findPageCache", allEntries = true)

这个是查询缓存么?我认为这个是方法级缓存。 至于查询缓存着可以分得更细

setCacheQueries(true);

web缓存和spring的配置让我感到很伤。

理论上:

<bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager"

p:cacheManager-ref="ehcache" />

<bean id="ehcache"

class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"

p:config-location="classpath:ehcache-web.xml" />

就能指定web缓存的配置,而且log也显示已经加载成功了,但是

老是报:net.sf.ehcache.CacheException: cache 'XXXX' not found in configuration

如果在classpath下写一个默认的

cache.xml当然是没问题的,因为ehcache默认的就是去那个文件里面找。但是为什么配置filter会找不到cache?难道fileter没有和spring结合起来?还要再看看。

 

 

猜你喜欢

转载自ak121077313.iteye.com/blog/1032838