Hi~!这里是奋斗的明志,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~
🌱🌱个人主页:奋斗的明志
🌱🌱所属专栏:Redis
📚本系列文章为个人学习笔记,在这里撰写成文一为巩固知识,二为展示我的学习过程及理解。文笔、排版拙劣,望见谅。
Redis Java 集成到 Spring Boot
一、使用 Spring Boot 连接 Redis 单机
1.创建Spring Boot 项目
2.勾选相关依赖(Dependencies)
- NoSQL 中的 Spring Data Redis
- 把 Web 中的 Spring Web 也勾选⼀下.
- 方便写接口进行后续测试.
3.界面显示
二、配置 Redis 服务地址
1.在 application.yml 中配置
spring:
data:
redis:
host: 127.0.0.1 # 地址
port: 8888 # 映射的端口号
补充:
Spring Boot 1.x 和 Spring Boot 2.x 中,spring.redis.host 用于配置 Redis 连接属性。
Spring Boot 3.x 中,spring.redis.host 已经弃用。
从 Spring Boot 2.x 开始,引入了 spring.data.redis 作为配置 Redis 连接的方式,并且在 Spring Boot 3.x 中也可以使用 spring.data.redis 进行配置。
2.映射端口号
- 用Shell8 进行配置,需要一个公网ip
三、创建 Controller 类
1.创建一个 MyController
由于当前只是写简单的测试代码, 我们就不进⾏分层了. 就只创建个简单的 Controller 即可.
@RestController
public class MyController {
@Autowired
private StringRedisTemplate redisTemplate;
}
StringRedisTemplate 用来处理文本数据的
继承于RedisTemplate
RedisTemplate 可以处理文本数据也可以处理二进制数据
2.使用 String
@GetMapping("/testString")
@ResponseBody
public String testString() {
//先清除之前的数据库
redisTemplate.execute((RedisConnection connection) -> {
connection.flushAll();
return null;
});
//对原生 redis 又做了进一步封装
redisTemplate.opsForValue().set("key", "111");
redisTemplate.opsForValue().set("key2", "222");
redisTemplate.opsForValue().set("key3", "333");
String value = redisTemplate.opsForValue().get("key");
System.out.println("value:" + value);
return "OK";
}
- 该代码片段是一个 Spring Boot 控制器方法,通过 RedisTemplate 与 Redis 进行交互,并进行一些基本的操作
redisTemplate.execute((RedisConnection connection) -> { ... })
:这行代码调用了RedisTemplate
的execute
方法,执行一个Redis
操作。具体来说,connection.flushAll()
会清空 Redis 中的所有数据(即调用FLUSHALL
命令)。execute
方法通过Lambda
表达式传递了一个Redis
连接对象,用来执行Redis
命令。执行完flushAll
后,Redis
中的所有数据
会被删除。redisTemplate.opsForValue()
相当于对命令进行进一步的封装,用它可以调用相关方法。