黑马点评 - 商铺类型缓存练习题(Redis List实现)

devtools/2025/2/6 8:17:00/

在这里插入图片描述
首先明确返回值是一个 List<ShopType> 类型那么我们修改此函数并在 TypeService 中声明 queryTypeList 方法,并在其实现类中实现此方法

    @GetMapping("list")public Result queryTypeList() {return typeService.queryTypeList();}

实现此方法首先需要明确数据类型,我选择的是 List ,可以方便的实现数据的读写,代码如下

@Service
public class ShopTypeServiceImpl extends ServiceImpl<ShopTypeMapper, ShopType> implements IShopTypeService {@Resourceprivate StringRedisTemplate stringRedisTemplate;@Overridepublic Result queryTypeList() {
//        1.从 redis 查询商铺列表String key = "cache:shoplist";List<ShopType> typeList = BeanUtil.copyToList(stringRedisTemplate.opsForList().range(key, 0, -1), ShopType.class);
//        2.命中,直接返回if (typeList != null && !typeList.isEmpty()) {return Result.ok(typeList);}
//        3.未命中,查询数据库typeList = query().orderByAsc("sort").list();
//        4.将商铺列表保存至 redisfor (ShopType shopType : typeList) {stringRedisTemplate.opsForList().leftPush(key, shopType.getName());}
//        5.返回店铺列表return Result.ok(typeList);}
}

运行之后刷新网页可以发现店铺列表已经存储到了 Redis 中了!
在这里插入图片描述


http://www.ppmy.cn/devtools/156488.html

相关文章

深度学习中,文本分类任务怎么做

一、处理流程 前置步骤&#xff1a; 标注数据得到数据集数据清理&#xff1a;将特殊字符、特殊格式、无效字符去除 正式步骤&#xff1a; 1、分词或分字&#xff1a;英文一般都分词&#xff0c;中文有分词也有分字。分词还是分字取决于你模型的embedding。 2、将字或词编辑ID…

R语言应用KNN、朴素贝叶斯、SVM实现手写数字识别

R语言应用KNN、朴素贝叶斯、SVM实现手写数字识别 使用Rstudio完成,下载本文绑定资源即可开始实验 一、The MNIST Dataset 在本研究中,我们将研究机器学习中最著名的数据集之一——MNIST(改进型国家标准与技术研究院)数据库。完整数据集包含70,000张0到9的手写数字训练图像…

TensorFlow是个啥玩意?

TensorFlow是一个开源的机器学习框架&#xff0c;由Google开发。它可以帮助开发者构建和训练各种机器学习模型&#xff0c;包括神经网络和深度学习模型。TensorFlow的设计理念是使用数据流图来表示计算过程&#xff0c;其中节点表示数学运算&#xff0c;边表示数据流动。 Tens…

【学术投稿-2025年计算机视觉研究进展与应用国际学术会议 (ACVRA 2025)】从计算机基础到HTML开发:Web开发的第一步

会议官网&#xff1a;www.acvra.org 简介 2025年计算机视觉研究进展与应用&#xff08;ACVRA 2025&#xff09;将于2025年2月28-3月2日在中国广州召开&#xff0c;将汇聚世界各地的顶尖学者、研究人员和行业专家&#xff0c;聚焦计算机视觉领域的最新研究动态与应用成就。本次…

【PyQt】lambda函数,实现动态传递参数

为什么需要 lambda&#xff1f; 在 PyQt5 中&#xff0c;clicked 信号默认会传递一个布尔值&#xff08;表示按钮是否被选中&#xff09;。如果我们希望将按钮的文本内容传递给槽函数&#xff0c;需要通过 lambda 函数显式传递参数。 这样可以实现将按钮内容传递给槽函数&…

vs 编译错误 error C4996

编译出错&#xff1a;error C4996: Json::Reader::Reader: Use CharReader and CharReaderBuilder instead : 参见“Json::Reader::Reader”的声明 新版本已经标志Json::Reader::Reader为废弃接口&#xff0c;编译情况下可能会出错提示&#xff0c;根据编译器的不同&#xff…

e2studio开发RA2E1(7)----定时器GPT输出PWM

e2studio开发RA2E1.7--定时器GPT输出PWM 概述视频教学样品申请硬件准备参考程序源码下载选择计时器新建工程工程模板保存工程路径芯片配置工程模板选择时钟设置GPIO口配置GPT定时器GPT定时器属性配置初始化GPT启动GPT PWM模块演示 概述 GPT&#xff08;通用 PWM 计时器&#x…

Ruby 类和对象

Ruby 类和对象 引言 在软件开发中,类和对象是面向对象编程(OOP)的核心概念。Ruby 作为一种动态、解释型编程语言,也以简洁的方式支持面向对象编程。本文将深入探讨 Ruby 中的类和对象,包括它们的定义、创建、使用以及一些高级特性。 类与对象的定义 类 在 Ruby 中,类…