<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p"
xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:util="http://www.springframework.org/schema/util" xmlns:cache="http://www.springframework.org/schema/cache"
xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-4.2.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.2.xsd">
<context:component-scan base-package="com.my.proper" />
<context:component-scan base-package="com.my.action" />
<context:annotation-config />
<!-- cache注解 -->
<cache:annotation-driven />
<!--spring cache管理器 -->
<bean id="cacheManager" class="org.springframework.cache.support.SimpleCacheManager">
<property name="caches">
<set>
<bean
class="org.springframework.cache.concurrent.ConcurrentMapCacheFactoryBean">
<property name="name" value="default" />
</bean>
<bean
class="org.springframework.cache.concurrent.ConcurrentMapCacheFactoryBean">
<property name="name" value="mycache" />
</bean>
</set>
</property>
</bean>
</beans>
package com.my.action;
import java.util.UUID;
import org.springframework.cache.annotation.CacheEvict;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;
@Service
public class MyCache {
@Cacheable(value = "mycache")
public String getUuid() {
return UUID.randomUUID().toString();
}
@CacheEvict(value = "mycache")
public String updateUuid() {
return UUID.randomUUID().toString();
}
}
public void cacheTest() {
MyCache cache=(MyCache) cx.getBean("myCache");
System.out.println(cache.getUuid());
System.out.println(cache.getUuid());
System.out.println(cache.updateUuid());
System.out.println(cache.getUuid());
System.out.println(cache.getUuid());
}