这是我参与2022首次更文挑战的第23天,活动详情查看:2022首次更文挑战
hello,你好呀,我是灰小猿,一个超会写bug的程序猿!
今天我们来详细讲解一下如何使用springboot来集成Redis并实现操作。
今日学习内容
昨天我们讲了如何通过Java来操作Redis,其中讲到了三个操作Redis的工具类,分别是Jedis、RedisTemplate、StringRedisTemplate。今天这一节我们主要来讲一下Redis在实际项目开发中的主要使用,一般Redis会结合spring系列框架使用,最常见的就是SpringBoot集成Redis。在此没有学习过springboot框架的小伙伴可以先把这一篇作为了解,熟悉一下Redis在开发中的实际使用,为以后的学习打下基础。但是最后面Redis的配置文件还是建议去学习一下的!
今天的学习推荐使用IDEA软件,附上一个大佬的IDEA下载安装教程【IDEA下载安装】
一、SpringBoot集成Redis
没有学习过springboot的兄弟们,如果感兴趣的话可以先学习一下如何创建springboot项目和Maven依赖,【springboot及maven创建教程】,
1、导入jar包
由于springboot是一个Maven项目,所以一般是通过在pom.xml文件写入依赖的方式导入所需jar包,springboot集成Redis所需的jar包依赖是:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
2、编写yml配置文件
我们在上一篇文章中和大家讲了如果想要在spring系列的框架中使用redis,那么一般使用的是RedisTemplate和stringRedisTemplate这两个工具类,并且对于ip地址,端口号这些信息。在实际的项目开发中,我们并不会将其写死,而是写在配置文件中,方便之后的修改。
springboot的配置文件有两种,一种是application.propertis,另一种是application,yml。两种配置文件的作用是一样的,但是yml文件的可读性相对来说更强一点。
注意:springboot在创建之后默认的配置文件是application.propertis,使用application,yml的话,可以将application.propertis文件删除并创建application,yml文件
我们以yml文件中配置为例,来编写springboot中Redis的配置:
##redis配置信息
spring:
redis:
database: 0 #redis数据库索引,默认为0
host: 127.0.0.1 #redis服务器地址
port: 6379 #redis服务器连接端口
password: #redis服务器连接密码,默认为null
timeout: 5000 #redis连接超时时间
# ******** 如果不使用连接池,那么下面这部分可省略不写 ********
jedis:
pool: #连接池配置
max-active: 8 #连接池最大连接数
max-wait: -1 #连接池最大阻塞等待时间
max-idle: 8 #连接池中的最大空闲连接数
min-idle: 0 #连接池中的最小空闲连接数
配置完成之后,我们就可以在springboot中使用RedisTemplate工具类来操作Redis了,
注意:在操作中仍要保证Redis服务器的命令行端口处于开启状态!
我们以操作RedisTemplate工具类为例,在类中如果想要使用RedisTemplate工具类,需要将其加上@Autowired注解,将其自动注入。否则RedisTemplate就不会根据我们配置文件中的Redis参数连接到Redis!
@SpringBootTest
class SpringbootredisApplicationTests {
@Autowired
private StringRedisTemplate stringRedisTemplate;
@Autowired
private RedisTemplate redisTemplate;
/**
* 使用redisTemplate操作
*/
@Test
public void redisTest07() {
System.out.println("redisTemplate集成测试");
redisTemplate.opsForValue().set("姓名","灰小猿");
System.out.println("获取到的姓名:" + redisTemplate.opsForValue().get("姓名"));
// 数据库操作
RedisConnection connection = redisTemplate.getConnectionFactory().getConnection();
// 清空当前数据库
// connection.flushDb();
// 清空所有数据库
// connection.flushAll();
}
}
解释一下上面代码中的数据库操作,该行代码可以连接到我们的Redis数据库,执行数据库中数据的删除、清空、查询等操作。但是如果想要专门操作某一个数据类型的数据,还是需要通过相应的opsForxxx()方法进行!
运行结果:
redisTemplate集成测试
获取到的姓名:灰小猿
到这里,springboot集成Redis并使用RedisTemplate工具类进行操作就完成了,这也是在平常进行项目开发时,最简单也是最常用的集成方式!
以上内容是在应对企业级应用开发的第一步,在spring系列框架中使用Redis,还有一个比较重要的操作是自定义RedisTemplate配置,这个我们会在下一篇文章讲解!
我是灰小猿,我们下期见!