You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot连接Mongo Atlas超时,已尝试Stack Overflow方案仍未解决

问题根因

你遇到的javax.net.ssl.SSLHandshakeException: extension (5) should not be presented in certificate_request异常是Java 11.0.2、11.0.3版本的已知TLS协议解析缺陷,Mongo Atlas服务器返回的证书请求携带的TLS扩展被该版本JDK错误拦截,导致SSL握手失败,最终触发连接超时。

解决方案

  • 方案1(最推荐):升级JDK版本到11.0.4及以上,该版本官方已修复此TLS扩展解析bug,无需修改任何项目配置即可正常连接。
  • 方案2(临时兼容,无需升级JDK):给Spring Boot应用添加JVM启动参数,强制使用TLS1.2协议连接:
    -Djdk.tls.client.protocols=TLSv1.2
    
    如果使用Maven的spring-boot插件启动,可在pom.xml中添加如下配置:
    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <configuration>
            <jvmArguments>-Djdk.tls.client.protocols=TLSv1.2</jvmArguments>
        </configuration>
    </plugin>
    
  • 额外配置修正:删除URI中额外添加的ssl=true和sslInvalidHostNameAllowed=true参数,mongodb+srv协议默认会自动开启SSL校验,额外配置反而可能引发其他异常,保持如下基础配置即可:
    spring.data.mongodb.uri=mongodb+srv://user:pwd@cluster.mongodb.net/test?retryWrites=true&w=majority
    

内容的提问来源于stack exchange,提问作者Prabhakaran

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.08 19:51:00