七叶笔记 » 数据库 » Redis之sql缓存的具体使用

Redis之sql缓存的具体使用

1.环境搭建

2.Redis配置

3.功能实现

新增、更新、删除、查询数据时,对缓存执行对应相同的操作

为了简便,数据不从数据库获取,这里是创建Map存储数据实现

4.缓存注解的使用说明

@CacheConfig:注解在类上,表示该类所有缓存方法使用统一指定的缓存区,也可以作用在方法上

@CacheAble:注解在方法上,应用到读数据的方法上,如查找方法:调用方法之前根据条件判断是否从缓存获取相应的数据,缓存没有数据,方法执行后添加到缓存

#id 直接使用参数名 #p0 p0对应参数列表的第一个参数,以此类推 #user.id 参数是对象时,使用对象属性 #root. 可以点出很多方法 #root.methodName #result 返回值

http://localhost:8080/user/getUserById?id=1

http://localhost:8080/user/getUserById?id=2

http://localhost:8080/user/selectAll

@Cacheable运行流程:在调用方法之前判断condition,如果为true,则查缓存;没有缓存就调用方法并将数据添加到缓存;condition=false就与缓存无关了

@CachePut:注解在方法上,应用到写数据的方法上,如新增/修改方法,调用方法之后根据条件判断是否添加/更新相应的数据到缓存:

http://localhost:8080/user/saveUser

condition条件为true,添加到缓存,根据id查询直接从缓存获取 http://localhost:8080/user/getUserById?id=3

http://localhost:8080/user/updateUser?id=3 http://localhost:8080/user/getUserById?id=3

条件condition=true,执行缓存操作 条件unless=false,执行缓存操作;跟condition相反

@CacheEvict 注解在方法上,应用到删除数据的方法上,如删除方法,调用方法之后根据条件判断是否从缓存中移除相应的数据

http://localhost:8080/user/saveUser http://localhost:8080/user/getUserById?id=3 http://localhost:8080/user/deleteUser?id=3

自定义缓存key自动生成器

http://localhost:8080/user/findAll

http://localhost:8080/user/findAll?id=123

http://localhost:8080/user/findAll?username=yzm

@Caching 有时候我们可能组合多个Cache注解使用;比如用户新增成功后,我们要添加id–>user;username—>user;email—>user的缓存; 此时就需要@Caching组合多个注解标签了。

到此这篇关于Redis之sql缓存的具体使用的文章就介绍到这了,更多相关Redis sql缓存 内容请搜索七叶笔记以前的文章或继续浏览下面的相关文章希望大家以后多多支持七叶笔记!

相关文章