我想获得缓存工作的服务层方法,但它仍然进入它并调用数据库。我的设置错了吗?ehCache和Spring MVC错误与HIbernate
@Cacheable(cacheName="apiActivitiesCache", keyGenerator = @KeyGenerator (
name = "ListCacheKeyGenerator",
properties = {
@Property(name="useReflection", value="true"),
@Property(name="checkforCycles", value="true"),
@Property(name="includeMethod", value="false")
}
)
)
public GetMemberActivitiesResponse getActivities(GetMemberActivitiesRequest request) {
的servlet-context.xml的
<ehcache:annotation-driven cache-manager="ehCacheManager" create-missing-caches="true"/>
<ehcache:config cache-manager="ehCacheManager">
<ehcache:evict-expired-elements interval="60" />
</ehcache:config>
<beans:bean id="ehCacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
<beans:property name="configLocation" value="/WEB-INF/spring/ehcache.xml"/>
</beans:bean>
ehcache.xml中
<?xml version="1.0" encoding="UTF-8"?>
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd">
<defaultCache eternal="true" maxElementsInMemory="100" overflowToDisk="false" />
<cache name="apiActivitiesCache" eternal="false"
maxElementsInMemory="100" overflowToDisk="false" diskPersistent="false"
timeToIdleSeconds="0" timeToLiveSeconds="300"
memoryStoreEvictionPolicy="LRU" />
</ehcache>
getActivities方法位于我的服务层ActivitiesService.java中。它是从我的控制器层ActivitiesController.java调用的。它从控制器类中被调用,这是否甚至重要? – 2011-03-27 05:46:16
这是什么? – 2011-03-29 23:34:08