基于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);
        
    }
相关推荐
工业甲酰苯胺16 分钟前
spring-事务管理
数据库·sql·spring
落花流水 丶22 分钟前
Spring Security 完全指南
java·spring
全栈前端老曹31 分钟前
【Redis】Redis 持久化机制 RDB 与 AOF
前端·javascript·数据库·redis·缓存·node.js·全栈
生命因何探索3 小时前
Redis-持久化
数据库·redis·缓存
爱敲代码的小鱼3 小时前
web后端开发SpringBootWeb的入门:
java·spring boot·spring
那我掉的头发算什么4 小时前
【SpringBoot】统一功能处理详解
java·spring boot·后端·spring
福大大架构师每日一题4 小时前
redis 8.4.1 正式发布:安全升级、性能强化与多模块重大修复详解
数据库·redis·安全
rlpp4 小时前
spring.profiles.active和spring.profiles.include的使用及区别说明
java·后端·spring
果粒蹬i7 小时前
【HarmonyOS】RN of HarmonyOS实战开发项目+TanStack缓存策略
缓存·华为·harmonyos
MX_93597 小时前
Spring xml 方式整合第三方框架总结加案例
xml·java·spring