spring cache 简单使用说明加入门 之增删改查的使用

原创
2018/01/22 15:34
阅读数 1.5K

把spring cache 集成到项目,需要对数据进行增删改查操作,spring cache提供了一整套注解用于cache中数据的操作:

@Cacheable: 查询的时候如果缓存中存在则直接走缓存,如果缓存中不存在,则去调用方法,查询方法的结果存储在缓存中, vlaue 指代缓存中定义的名称,key指存储在缓存中的key

@Cacheable(value = "userInfo",key="#userName")
public User getInfo(String userName){
    `````
}

@CacheEvict:用来清理缓存。常用有cacheNames,allEntries(默认值false);分别代表了要清除的缓存名称和是否全部清除(true代表全部清除)。

@CacheEvict(value = "userInfo",key="#userName")
public void clear(String userName){
    `````
}

@CachePut:用来更新缓存,用它来注解的方法都会被执行,执行完后结果被添加到缓存中。该方法不能和@Cacheable同时在同一个方法上使用。

@CachePut(value = "userInfo",key="#userInfo.userName")
public UserInfo update(UserInfo userInfo){
    `````
}

对于@Caching注解来讲,如果有两种不同的需求,都是放在同一个方法上,这种需求如果只是使用@CacheEvict或者@CachePut是无法实现,因为他们不能多样化的作用在同一个方法上。可以使用@Caching(evict={@CacheEvict(“a1”),@CacheEvict(“a2”,allEntries=true)});

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部