基于Redis添加商铺查询缓存

文章目录

1.流程图

2.实现逻辑

Service层

java 复制代码
public Result queryById(Long id) {
        // 1.从redis中查询店铺缓存
        String shopJson = stringRedisTemplate.opsForValue().get("cache:shop:"+id);
        // 2.判断缓存是否存在
        if (StrUtil.isNotBlank(shopJson)) {
            Shop shop = JSONUtil.toBean(shopJson, Shop.class);
            return Result.ok(shop);
        }
        // 3.不存在,根据id查询数据库
        Shop shop = getById(id); // mybatisplus功能
        // 4.不存在,返回错误
        if (shop == null) {
            return Result.fail("店铺数据不存在");
        }
        // 存在,写入redis
        stringRedisTemplate.opsForValue().set("cache:shop:"+id, JSONUtil.toJsonStr(shop));
        return Result.ok(shop);
        
    }
相关推荐
炫酷的伊莉娜1 小时前
【Redis】零碎知识点(易忘 / 易错)总结回顾
redis
开开心心就好1 小时前
Word图片格式调整与转换工具
java·javascript·spring·eclipse·pdf·word·excel
·云扬·3 小时前
【PmHub后端篇】PmHub 中缓存与数据库一致性的实现方案及分析
数据库·缓存
一个天蝎座 白勺 程序猿3 小时前
Python爬虫(29)Python爬虫高阶:动态页面处理与云原生部署全链路实践(Selenium、Scrapy、K8s)
redis·爬虫·python·selenium·scrapy·云原生·k8s
一只码代码的章鱼4 小时前
spring -MVC-02
java·spring·mvc
追风赶月、4 小时前
【Redis】哨兵(Sentinel)机制
数据库·redis·sentinel
vvilkim4 小时前
Redis持久化机制详解:保障数据安全的关键策略
数据库·redis·缓存
大数据魔法师5 小时前
Redis(三) - 使用Java操作Redis详解
java·数据库·redis
IT光5 小时前
Redis 五种类型基础操作(redis-cli + Spring Data Redis)
java·数据库·redis·spring·缓存
沛沛老爹6 小时前
软件架构风格系列(3):管道 - 过滤器架构
spring·数据架构·软件架构风格·架构入门·管道-过滤器