基于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 小时前
NoSQL 之 Redis 配置与优化
redis·nosql
炸炸鱼.1 小时前
NoSQL 之 Redis 配置与优化
redis·nosql
河阿里1 小时前
SpringBoot :使用 @Configuration 集中管理 Bean
java·spring boot·spring
Flittly1 小时前
【SpringSecurity新手村系列】(4)验证码功能实现
java·spring boot·安全·spring
Flittly1 小时前
【SpringSecurity新手村系列】(3)自定义登录页与表单认证
java·笔记·安全·spring·springboot
J超会运1 小时前
Redis高效配置与优化指南
redis
苏渡苇1 小时前
5 分钟跑起 Redis(Docker 版)
数据库·redis·缓存·docker·redis入门
Jul1en_2 小时前
【Redis】Zset类型、命令及应用场景
数据库·redis·缓存
那个失眠的夜2 小时前
AspectJ
java·开发语言·数据库·spring
杨凯凡2 小时前
【014】基本类型与包装类:缓存、相等性、NPE
java·数据结构·缓存