@EnabledCaching 开启缓存注解功能、打在启动类或配置类上
@Cacheable 在方法执行前spring先查看缓存中是否有数据,如果有数据,则直接返回缓存数据;若没有数据,调用方法并将方法返回值放到缓存中。例:
@Cacheable(value = "user", key = "#user.id+'_'+#status")
@CachePut 将方法的返回值放到缓存中,不常用
@CacheEvict 将一条或多条数据从缓存中删除,例:
@CacheEvict(value = "user", key = "#user.id+'_'+#user.status")
@CacheEvict(value = "user", allEntries = true) //删除已user开头的全部key
@Caching(evict = {@CacheEvict(value = "setmeal", allEntries = true),@CacheEvict(value = "dish", allEntries = true)})例:
@Caching(evict = {
@CacheEvict(value = "setmeal", allEntries = true),
@CacheEvict(value = "dish", allEntries = true)
})//包括所有,可以传入cacheable、put、evict