0


SpringBoot整合Redis

在这里插入图片描述

🍁博客主页:👉不会压弯的小飞侠
✨欢迎关注:👉点赞👍收藏⭐留言✒
✨系列专栏:👉SpringBoot专栏(每日更新)
✨如果觉得博主的文章还不错的话,请三连支持一下博主。
🔥欢迎大佬指正,一起 学习!一起加油!
在这里插入图片描述

在这里插入图片描述

目录


🍁NoSQL解决方案

  • 常见的NoSQL解决方案 - Redis- MongoES
  • 说明:上述技术通常在Linux系统中安装部署,本篇基于Windows版安装所有的软件。

🍁Redis简介

  • Redis是一款key-value存储结构的内存级NoSQL数据库 - 支持多种数据存储格式- 支持持久化- 支持集群

🍁Redis的安装

  • windows下安装
  • 下载连接:点击下载
  • 解压
  • 打开解压后的文件,在搜索框搜索cmd,并打开
  • 输入命令:redis-server.exe ,启动失败。

在这里插入图片描述

  • 输入命令:redis-windows.conf ,还是启动失败。

在这里插入图片描述

  • 再次打开cmd

在这里插入图片描述

  • 输入以下命令 - redis-cli- shutdwn- exit

在这里插入图片描述

  • 输入启动命令:redis-windows.conf 启动成功。

在这里插入图片描述

🍁Redis基本命令

  • String类型的命令- set key value 设置数据,如果key存在就覆盖- get key 获取key对应的值
  • hash类型的命令- hset key filed value 设置filed字段的value- hget key filed 获取filed字段的value
  • nil 表示为空
  • clear 清屏
  • key* 获取所有的key

在这里插入图片描述
在这里插入图片描述

🍁SpringBoot整合Redis

  • 新建一个Springboot项目,这里就不过多描述,专栏里都有详细的教程。

⭐⭐⭐注意:

  1. 导入相关依赖,勾上之后,springboot会自动导入所需的依赖。

在这里插入图片描述

  • redis依赖
  1. <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>
  • RedisTemplate提供操作各种数据存储类型的接口API在这里插入图片描述

🍁

  1. 测试:
  1. packagecom.jkj;importorg.junit.jupiter.api.Test;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.boot.test.context.SpringBootTest;importorg.springframework.data.redis.core.HashOperations;importorg.springframework.data.redis.core.RedisTemplate;importorg.springframework.data.redis.core.ValueOperations;@SpringBootTestclassSpringboot10RedisApplicationTests{@AutowiredprivateRedisTemplate redisTemplate;@Testvoidset(){ValueOperations ops = redisTemplate.opsForValue();
  2. ops.set("name","rc");}@Testvoidget(){ValueOperations ops = redisTemplate.opsForValue();Object value = ops.get("name");System.out.println(value);}}

在这里插入图片描述
在这里插入图片描述
🍁

  1. 获取hash
  1. packagecom.jkj;importorg.junit.jupiter.api.Test;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.boot.test.context.SpringBootTest;importorg.springframework.data.redis.core.HashOperations;importorg.springframework.data.redis.core.RedisTemplate;importorg.springframework.data.redis.core.ValueOperations;@SpringBootTestclassSpringboot10RedisApplicationTests{@AutowiredprivateRedisTemplate redisTemplate;@Testvoidhset(){HashOperations hash = redisTemplate.opsForHash();
  2. hash.put("person","name","xfx");
  3. hash.put("person","name1","xmg");}@Testvoidhget(){HashOperations hash = redisTemplate.opsForHash();Object o = hash.get("person","name");System.out.println(o);}}

在这里插入图片描述

🍁与Redis客户端操作等效

  • StringRedisTemplate以字符串作为key和value

🍁

  1. 测试:
  1. packagecom.jkj;importorg.junit.jupiter.api.Test;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.boot.test.context.SpringBootTest;importorg.springframework.data.redis.core.StringRedisTemplate;importorg.springframework.data.redis.core.ValueOperations;@SpringBootTestpublicclassStringRedisApplication{@AutowiredprivateStringRedisTemplate stringRedisTemplate;@Testvoidget(){ValueOperations<String,String> ops = stringRedisTemplate.opsForValue();String name = ops.get("name");System.out.println(name);}}

🍁

  1. 验证是否等效
  • 先修改一下name的值

在这里插入图片描述
🍁

  1. 运行测试

在这里插入图片描述

🍁jedis技术

  • 导入依赖
  1. <dependency><groupId>redis.clients</ groupId><artifactId>jedis</artifactId></dependency>
  • 配置客户端属性
  1. spring:
  2. redis:
  3. host: localhost
  4. port:6379
  5. client-type: jedis
  • 配置客户端专用属性
  1. spring:
  2. redis:
  3. host: localhost
  4. port:6379
  5. client-type: lettucelettuce:
  6. pool:
  7. max-active:16
  8. jedis:
  9. pool:
  10. max-active:16

在这里插入图片描述

  • lettcus与jedis区别 - jedis连接Redis服务器是直连模式,当多线程模式下使用jedis会存在线程安全问题,解决方案可以通过配置连接池使每个连接专用,这样整体性能就大受影响。- lettcus基于Netty框架进行与Redis服务器连接,底层设计中采用StatefulRedisConnection。- StatefulRedisConnection自身是线程安全的,可以保障并发访问安全问题,所以一个连接可以被多线程复用,lettcus也支持多连接实例一起工作。

本文转载自: https://blog.csdn.net/qq_43514330/article/details/125841743
版权归原作者 不会压弯的小飞侠 所有, 如有侵权,请联系我们删除。

“SpringBoot整合Redis”的评论:

还没有评论