当前位置: 首页 > news >正文

【苍穹外卖 | 项目日记】第四天

前言:

             今天状态还可以,既有自己实战独立写接口,又听了课,学习了新的知识9a472e0eeef64679b3b73ba2bafd6ee9.png

目录

前言:

今日完结任务:

今日收获:

实现店铺状态接口 

杂项知识点:

总结:


 

 

今日完结任务:

  • 实现删除套餐接口
  • 实现修改套餐接口
  • 实现起售停售接口
  • 实现查询店铺状态接口
  • 实现修改店铺接口

今日收获:

前几个关于店铺的接口其实没有什么收获,因为还是简单的CURD操作,因此我在这里不多做介绍,但是在实现查询店铺状态接口的时候,我学习到了一个很重要的知识点: Redis

实现店铺状态接口 

店铺无非就两个状态:开业中和已打烊。按照我们之前的思路:首先在MySQL中建表,然后我们的接口实现对这个表进行读取或更改。但是这样却存在两个问题

  1. 如果建表,这个表就一行一列,只有一个 status 状态,而我们是否有必要为了这样一个简单的数据去单独建立一张表呢?
  2. 店铺的营业状态属于高请求类型,只要用户点进这家店铺,就要发送这样的请求查询店铺状态,而MySQL是把表存储在磁盘当中的,也就是说在读写操作上并不占优,如果在高并发的情况下,是否会影响体验呢?

为了解决这个问题,我们在这里使用的是键值类型的数据库Redis。

fa7dd7d56ce74e36924aab4331906b9f.png

关于Redis我也写了一篇简单介绍的文章:

【从零开始学习Redis | 第一篇】快速了解Redis_我是一盘牛肉的博客-CSDN博客

并且Redis会把数据存放在内存中,拥有较高的读写速度,天生就适合处理高并发请求数据。

杂项知识点:

在java应用Redis的时候,配置类中的连接工厂和Key序列化器是什么?

  1. 连接工厂(RedisConnectionFactory):连接工厂负责创建和管理与 Redis 数据库的连接。通过配置连接工厂,我们可以指定连接到 Redis 服务器的方式(比如单机、主从、哨兵、集群等),以及设置连接池的一些参数(如最大连接数、最大空闲连接数等)。连接工厂是 RedisTemplate 连接 Redis 的入口,它提供了与 Redis 进行交互的底层实现。

  2. Key 序列化器(Key Serializer):Redis 是一个键值对数据库,我们在与 Redis 进行交互时需要传递 Key 和 Value。Key 序列化器负责将 Java 对象的 Key 序列化为 Redis 可以接受的字节数组格式,并在从 Redis 中获取数据时进行反序列化。在 RedisTemplate 中,如果我们不设置 Key 序列化器,它会使用默认的 JdkSerializationRedisSerializer,这种序列化器使用 Java 原生序列化机制,生成的序列化数据较大且可读性差,不利于后期维护和调试。常用的 Key 序列化器有 StringRedisSerializer(将 Key 序列化为字符串)、GenericToStringSerializer(将 Key 序列化为字符串,适用于大多数场景)等。

通过配置连接工厂和 Key 序列化器,我们可以实现以下目的:

  • 确保正确连接到 Redis 数据库,使用合适的连接方式和参数进行连接管理,提高连接的可靠性和性能。

  • 在与 Redis 进行数据交互时,将 Java 对象的 Key 序列化为 Redis 可以接受的格式,以及从 Redis 中获取的数据进行反序列化,保证数据的正确传输和使用。

因此,配置连接工厂和 Key 序列化器可以帮助我们更方便地操作 Redis 数据库,并确保数据的一致性和可靠性。

总结:

        今天还是收获挺多的,唯一的遗憾就是白天的时候有点摆,没怎么学,一直到下午四点才开始学,要注意这个问题

如果我的内容对你有帮助,请点赞,评论,收藏。创作不易,大家的支持就是我坚持下去的动力!

69e9169c980f43e0aad31ff9ada88a9c.png

 

 

 

 

 

http://www.lryc.cn/news/193030.html

相关文章:

  • 零代码编程:用ChatGPT批量采集bookroo网页上的英文书目列表
  • 7.定时器
  • 计算机网络 | 网络层
  • 21GA-ELM,遗传算法优化ELM预测,并和优化前后以及真实数值进行对比,确定结果,基于MATLAB平台,程序已经调通,可以直接运行,需要直接拍下。
  • 287_C++_TaskQueue管理任务队列和定时器(头文件.h)
  • Hadoop+Zookeeper+HA错题总结(一)
  • React高级特性之context
  • 【OS】操作系统课程笔记 第五章 并发性——互斥、同步和通信
  • RabbitMQ概述原理
  • 8.Covector Transformation Rules
  • RustDay04------Exercise[21-30]
  • OpenAI科学家谈GPT-4的潜力与挑战
  • Java电子病历编辑器项目源码 采用B/S(Browser/Server)架构
  • 使用 AWS DataSync 进行跨区域 AWS EFS 数据传输
  • 设计模式~解释器模式(Interpreter)-19
  • 对象混入的实现方式
  • Mac 远程 Ubuntu
  • 黑豹程序员-h5前端录音、播放
  • Leetcode622.设计循环队列
  • 二十二、【形状工具组】
  • 设计模式~迭代器模式(Iterator)-20
  • 亳州市的自然风光与旅游资源:欣赏安徽省中部的壮丽景色
  • windows安装nvm以及解决yarn问题
  • 【TA 挖坑04】薄膜干涉 镭射材质 matcap
  • OpenCV13-图像噪声:椒盐噪声和高斯噪声
  • 天堂2服务器基本设置
  • 如何解决网站被攻击的问题
  • python爬虫入门详细教程-采集云南招聘网数据保存为csv文件
  • 1.13.C++项目:仿muduo库实现并发服务器之TcpServer模块的设计
  • Spring(17) AopContext.currentProxy() 类内方法调用切入