在学习spring boot整合redis的时候,因为一个小细节卡了一天,最后在师兄的帮助下成功解决。解决步骤如下:
1、首先导入spring-boot-starter-redis依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
2、然后在application.properties(application.yml)配置文件中配置redis的基本属性
spring.redis.database=0
spring.redis.host=localhost
spring.redis.port=6379
spring.redis.password=(redis设置的密码)
spring.redis.lettuce.pool.max-active=8
spring.redis.lettuce.pool.max-idle=8
spring.redis.lettuce.pool.max-wait=-1ms
spring.redis.lettuce.pool.min-idle=0
3、之后在controller测试时,就抛出了UnsatisfiedDependencyException异常,检查后台,redis也已经启动,但就是无法解决(注意:redis必须在后台启动)。求助师兄后,师兄指出,在application.properties(application.yml)配置redis时,如果使用了带有“.pool.”的配置,例如:
spring.redis.lettuce.pool.max-active=8
spring.redis.lettuce.pool.max-idle=8
spring.redis.lettuce.pool.max-wait=-1ms
spring.redis.lettuce.pool.min-idle=0
就必须要导入一个redis的连接池,在导入了如下redis连接池依赖后,问题解决。
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
</dependency>