SpringBoot复习:(48)RedisAutoConfiguration自动配置类

RedisAutoConfiguration类代码如下:

可以看到在这个类中配置了2个bean: redisTemplate和stringRedisTemplate.

而它通过@EnableConfigurationProperties(RedisProperties.class)注解,把配置文件中配置的Redis相关的信息引入进来了,RedisProperties代码如下:

还可以看到RedisAutoConfiguration上有@Import注解

@Import({ LettuceConnectionConfiguration.class, JedisConnectionConfiguration.class })

LettuceConnectionConfiguration代码如下:

可以看到创建了一个名为redisConnectionFactory的类型为LettuceConnectionFactory的bean,父类型为RedisConnectionFactory.

JedisConnectionFactory代码如下:

可以看到创建了一个名为redisConnectionFactory的类型为JedisConnectionFactory的bean,父类型为RedisConnectionFactory.

通过使用@ConditionalOnMissingBean(RedisConnectionFactory.class),可以确保容器中只会从LettuceRedisConnectionFactory和JedisConnectionFactory中二选一。最后,二选一的RedisConnectionFactory bean会被RedisAutoConfiguration注入

spring-boot-starter-data-redis默认引入的是lettuce依赖,所以默认使用的RedisConnectionFactory是LettuceConnectionFactory.想使用JedisConnectionFactory的话,需要手动引入jedis依赖

复制代码
        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>3.6.0</version>
        </dependency>
相关推荐
mldong3 分钟前
Node 开发者也有自己的轻量工作流引擎了:npm i 一行,5 分钟跑通一条审批流
javascript·后端·typescript
考虑考虑8 小时前
cmd局部设置java变量
运维·后端·自动化运维
陈随易11 小时前
在Finch用了62亿词元,我认为这是新一代Agent工具之神
前端·人工智能·后端
wing9812 小时前
从codex转战workbuddy使用一周的感受
前端·人工智能·后端
EatFan12 小时前
Java接入支付宝 JSAPI 支付保姆教程(二):流程讲解与前后端代码讲解
前端·spring boot·后端·微信小程序·小程序·uni-app
步行cgn13 小时前
Spring 报错:No bean class specified on bean definition 的原因与解决
java·后端·spring
凤山老林13 小时前
Spring Boot 整合 Flowable 的企业级落地指南
数据库·spring boot·后端·flowable·工作流
苏三说技术13 小时前
Kafka已正式接入AI
后端
企业数字化笔记13 小时前
AI写的系统出现504怎么办?接口超时和数据库慢查询排查
数据库·后端
IT_陈寒13 小时前
Redis的Set操作居然能把我的服务整挂了?
前端·人工智能·后端