springBoot连接远程Redis连接失败的问题解决
问题:
首先,我是先用jedis进行的redis连接,成功连接,没有任何问题,说明redis配置,以及访问地址、端口、密码都是正确的。
我的yml文件配置如下:
spring:
redis:
host: 远程ip地址
port: 6379
password: 密码但是当我使用springboot里面的redisTemplate进行连接的时候,却发生了报错,报错信息如下
OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis ..... Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to localhost/<unresolved>:6379 ...... Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: localhost/127.0.0.1:6379 ..... Caused by: java.net.ConnectException: Connection refused: no further information .....
然后我就很奇怪,同样的访问,为什么使用jedis能够成功,但是使用redisTemplate就会失败
解决过程:
目光看向报错信息,Caused by: io.lettuce.core.RedisConnectionException: Unable to connect to localhost/<unresolved>:6379,这段表示在连接本地的redis的时候失败了,???,我本地没有安装redis,当然连接不上了,但是为什么我配置的远程ip,会连接到本地!
由于在springBoot中每个配置项都会有一个默认的自动配置类与之对应,我这里配置了但是没效果,显然配置失败,项目使用默认的localhost进行连接的,那为啥会配置失败呢
在我查了半天教程之后,总算在一篇教程里面发现了类似的情况,如下:
上面这篇文件就是,作者在从spirngBoot2升到3之后redis连接失败了,查看了源码之后发现redis的前缀发生了改变!!!
而我使用的是spirngBoot3,上面的yml配置方法是springBoot2的配置方法,所以产生了配置失效!
解决方法:
根据源码可知,springboot3中redis的前缀从“spring.redis”变成了"spring.data.redis"
因此我们的配置文件,需要再中间加一个data!
spring:
data:
redis:
host: 39.104.26.173
port: 6379
password: wen200389这样就能够成功连接了!
总结:
一定要注意,不同的springboot版本,对应的配置文件的格式,有可能会发生改变,需要及时更正
还有就是,遇到问题,多看源码!!许多问题真的能够通过看源码解决
到此这篇关于springBoot连接远程Redis连接失败的问题解决的文章就介绍到这了,更多相关springBoot连接远程Redis内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
- SpringBoot实现自定义Redis的连接的流程步骤
- SpringBoot无法连接redis的解决方案
- 关于SpringBoot集成Lettuce连接Redis的方法和案例
- springboot连接不上redis的三种解决办法
- springboot连接redis并动态切换database的实现方法
- springboot 如何使用jedis连接Redis数据库
- springboot连接Redis的教程详解
- springboot2整合redis使用lettuce连接池的方法(解决lettuce连接池无效问题)
- 基于SpringBoot2.0默认使用Redis连接池的配置操作
- Springboot2.X集成redis集群(Lettuce)连接的方法
- Spring Boot2 整合连接 Redis的操作方法
相关文章
springboot~nexus项目打包要注意的地方示例代码详解
这篇文章主要介绍了springboot~nexus项目打包要注意的地方,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-07-07
一文告诉你为什么要重写hashCode()方法和equals()方法
本篇文章带大家了解一下为什么重写hashCode()方法和equals()方法,文中有非常详细的说明以及代码示例,对正在学习java的小伙伴们很有帮助,需要的朋友可以参考下2021-05-05
Springboot上传文件的同时传递参数用对象接收的问题及解决方案
在Spring Boot中,若接口需同时接收文件和其他参数,应将文件用@RequestParam标注,其他参数封装对象并用@Validated校验,避免参数绑定冲突,本文给大家介绍Springboot上传文件的同时传递参数用对象接收,感兴趣的朋友跟随小编一起看看吧2025-09-09
IDEA启动springboot项目报missing ServletWebServerFactory错误的解决
Spring Boot项目在IDEA中启动时报错,经过排查发现是由于Tomcat依赖的AprLifecycleListener类未被正确加载,通过将Tomcat依赖的scope从provided改为compile,解决了问题2025-12-12


最新评论