@Cacheable 相关注解
时间: 2023-10-09 15:15:21 浏览: 74
@Cacheable 是 Spring Framework 提供的缓存注解之一,它可以标注在方法上,表示该方法的返回结果可以被缓存起来,以便下次需要同样参数调用该方法时,可以直接返回缓存中的结果,而不必再次执行该方法。
该注解有以下几个常用属性:
- value:缓存的名称,如果没有指定则使用默认的缓存名称。
- key:缓存的键,用于唯一标识缓存的数据,支持 SpEL 表达式。
- condition:缓存的条件,只有满足条件的情况下才会进行缓存。
- unless:缓存的排除条件,只有不满足排除条件的情况下才会进行缓存。
使用 @Cacheable 注解需要在 Spring 配置文件中配置缓存管理器,例如:
```xml
<bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager">
<property name="cacheManager" ref="ehcache"/>
</bean>
<bean id="ehcache" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
<property name="configLocation" value="classpath:ehcache.xml"/>
</bean>
```
其中,EhcacheCacheManager 是 Spring 提供的 Ehcache 缓存管理器,EhCacheManagerFactoryBean 是 Ehcache 的工厂类,用于创建 EhcacheCacheManager 的实例。配置文件中的 ehcache.xml 文件是 Ehcache 的配置文件,用于配置缓存策略、缓存的大小、过期时间等等。
阅读全文