SpringBoot集成Redis操作详解

285 阅读3分钟

这是我参与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配置,这个我们会在下一篇文章讲解!

我是灰小猿,我们下期见!