首页数据添加redis缓存

1、springboot整合redis

(1)在common引入redis依赖

java 复制代码
<!-- redis -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!-- spring2.X集成redis所需common-pool2-->
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-pool2</artifactId>
    <version>2.6.0</version>
</dependency>

(2)编写redis配置类,配置redis相关插件

(3)在service_cms模块配置文件中添加redis配置

java 复制代码
spring.redis.host=你自己的虚拟机ip
spring.redis.port=6379
spring.redis.database= 0
spring.redis.timeout=1800000

spring.redis.lettuce.pool.max-active=20
spring.redis.lettuce.pool.max-wait=-1
#最大阻塞等待时间(负数表示没限制)
spring.redis.lettuce.pool.max-idle=5
spring.redis.lettuce.pool.min-idle=0

(4)在具体功能上添加 查询功能,先查询缓存,没有,之后查询数据库,缓存中存储数据

java 复制代码
@Service
public class BannerServiceImpl extends ServiceImpl<BannerMapper, Banner> implements BannerService {
    //前台查询banner
    //value::key  banner::selectIndexList
    @Cacheable(value = "banner",key = "'selectIndexList'")
    @Override
    public List<Banner> getAllBanner() {
        List<Banner> bannerList = baseMapper.selectList(null);
        return bannerList;
    }
}
java 复制代码
*数据库写操作时,不需要同步更新redis缓存,把写操作数据在缓存中删除
*再次查询时,走完整更新缓存步骤
相关推荐
自珍JAVA3 小时前
访问者模式:让你的代码优雅地“拜访”对象结构
后端
毅航5 小时前
AI 浪潮下,会用工具不等于具备能力
后端·程序员·ai编程
比特森林探险记6 小时前
go 语言中的context 解读和用法
开发语言·后端·golang
刀法如飞6 小时前
《道德经》简单解说版-第 2 章:天下皆知美之为美
前端·后端·面试
Gh0st_Lx8 小时前
【9】面试官:讲一下MySQL 和 Redis 的缓存一致性问题
redis·mysql·缓存
IT_陈寒9 小时前
Vue的computed属性怎么突然不更新了?
前端·人工智能·后端
智商不够_熬夜来凑9 小时前
【Picker】单选多选
前端·javascript·vue.js
invicinble9 小时前
spring提供的其他机制
java·后端·spring
还是鼠鼠9 小时前
AI掘金头条新闻系统 (Toutiao News)-用户注册-创建用户
后端·python·mysql·fastapi·web
李广坤9 小时前
别再把 Filter、Interceptor 和 AOP 混为一谈了!从接口加解密谈 Spring 纵深架构设计
后端