注解 | 说明 |
@Cacheable | 标记在方法上,表示方法的返回值会被缓存。当方法被调用时,会先查抄缓存中是否存在对应的结果,如果存在,则直接返回缓存中的值,如果不存在,则执行方法体,并将返回值缓存起来。 |
@CachePut | 标记在方法上,表示方法的返回值会被缓存。不同于 @Cacheable,@CachePut 每次都会执行方法体,并将返回值缓存起来;它通常用于更新缓存。 |
@CacheEvict | 标记在方法上,表示扫除缓存项。通过设置不同的属性来扫除的相应缓存项,通过 key 属性来扫除特定键的缓存项,通过 allEntries 属性来扫除所有缓存项。 |
@Caching | 用于多个缓存操作的组合,可以同时利用 @Cacheable、@CachePut 和 @CacheEvict 等注解。 |
@CacheConfig | 标记在类上,用于指定该类中所有方法的缓存相关设置,包括缓存名称、缓存管理器等。 |
这些注解通过声明式的方式来管理缓存,通过在方法上添加相应的注解,可以方便地实现缓存的读取、更新和扫除等操作。同时,Spring Cache 还支持利用 SpEL 表达式来动态地指定缓存的 Key 和条件等。开发者可以根据具体的业务需求选择合适的注解来设置缓存举动。