Java教程

Spring Cache + Redis 缓存数据(主要聊聊spring cache)

本文主要是介绍Spring Cache + Redis 缓存数据(主要聊聊spring cache),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录

一:关于spring cache

1.使用Spring Cache的好处:

二:使用Spring Cache

1.常用缓存标签

(1)缓存@Cacheable

 (2)缓存@CachePut

(3)缓存@CacheEvict 

 (4)@EnableCaching


一:关于spring cache

Spring Cache 是一个非常优秀的缓存组件。自Spring 3.1起,提供了类似于@Transactional注解事务的注解Cache支持,且提供了Cache抽象,方便切换各种底层Cache(如:redis)

1.使用Spring Cache的好处:

    1,提供基本的Cache抽象,方便切换各种底层Cache;

    2,通过注解Cache可以实现类似于事务一样,缓存逻辑透明的应用到我们的业务代码上,且只需要更少的代码就可以完成;

    3,提供事务回滚时也自动回滚缓存;

    4,支持比较复杂的缓存逻辑;

二:使用Spring Cache

1.常用缓存标签

(1)缓存@Cacheable

根据方法对其返回结果进行缓存,下次请求时,如果缓存存在,则直接读取缓存数据返回;如果缓存不存在,则执行方法,并把返回的结果存入缓存中。一般用在查询方法上。

查看源码,属性值如下:

 (2)缓存@CachePut

使用该注解标志的方法,每次都会执行,并将结果存入指定的缓存中。其他方法可以直接从响应的缓存中读取缓存数据,而不需要再去查询数据库。一般用在新增方法上。

查看源码,属性值如下:

(3)缓存@CacheEvict 

使用该注解标志的方法,会清空指定的缓存。一般用在更新或者删除方法上。

查看源码,属性值如下:

 (4)@EnableCaching

 标记注解 @EnableCaching,开启缓存,并配置Redis缓存管理器。@EnableCaching 注释触发后置处理器, 检查每一个Spring bean 的 public 方法是否存在缓存注解。如果找到这样的一个注释, 自动创建一个代理拦截方法调用和处理相应的缓存行为。

这篇关于Spring Cache + Redis 缓存数据(主要聊聊spring cache)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!