javax.net.ssl.SSLHandshakeException: No appropriate protocol

这篇具有很好参考价值的文章主要介绍了javax.net.ssl.SSLHandshakeException: No appropriate protocol。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

服务跑不起来(关于配置文件):

报错:

Caused by: javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
	at sun.security.ssl.HandshakeContext.<init>(HandshakeContext.java:171) ~[?:1.8.0_321]
	at sun.security.ssl.ClientHandshakeContext.<init>(ClientHandshakeContext.java:106) ~[?:1.8.0_321]
	at sun.security.ssl.TransportContext.kickstart(TransportContext.java:237) ~[?:1.8.0_321]
	at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:405) ~[?:1.8.0_321]
	at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:384) ~[?:1.8.0_321]
Caused by: com.mysql.cj.core.exceptions.CJCommunicationsException: Communications link failure

原因:数据库配置(增加useSSL=false)

#spring.datasource.url=jdbc:mysql://ip:3306/dbuser?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&serverTimezone=Asia/Shanghai
spring.datasource.url=jdbc:mysql://ip:3306/dbuser?useUnicode=true&characterEncoding=utf8&allowPublicKeyRetrieval=true&useSSL=false&tinyInt1isBit=false

解释代码

这是一个Spring Boot应用程序的配置文件中的一行代码,用于设置数据库连接信息。具体解释如下:

  1. spring.datasource.url:这是Spring Boot中用于配置数据源URL的属性。
  2. jdbc:mysql://ip:3306/dbuser:这是JDBC URL,用于指定数据库的类型(MySQL)、主机地址(ip)、端口号(3306)以及数据库名称(dbuser)。
  3. useUnicode=true:这个参数表示使用Unicode字符集。
  4. characterEncoding=utf8:这个参数表示使用UTF-8字符编码。
  5. allowPublicKeyRetrieval=true:这个参数表示允许从服务器获取公钥。
  6. useSSL=false:这个参数表示不使用SSL加密连接。
  7. tinyInt1isBit=false:这个参数表示将TINYINT类型映射为Java的byte类型,而不是boolean类型。

另外:

远程数据库连接之前正常连接,运行几次项目后(状态:启动失败)后被远程数据库拒绝连接应该也是这个原因

Error number 1129
Host 'ip' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'

PS:两个配置文件都要修改->clean->pakeage(修改配置文件后需要打包)

javax.net.ssl.sslhandshakeexception: no appropriate protocol (protocol is di,.net,ssl,网络协议

重新clean和package操作的情况:

在IDEA项目中,以下几种情况可能需要执行重新clean和package操作:

  1. 代码变更:当项目中的源代码发生了修改,需要将这些变更反映到最终的构建产物中时,应该执行重新clean和package操作。这样可以确保新的代码被编译并包含在内。
  2. 依赖更新:如果项目的依赖关系发生了变化,比如添加或移除了依赖库,或者依赖库的版本发生了更改,通常需要重新执行构建过程以获取正确的构建结果。
  3. 配置文件修改:对于项目中的配置文件进行了修改,这些改动需要反映到打包文件中,以确保运行时环境能够正确加载配置。
  4. 构建脚本更新:如果项目的构建脚本(如pom.xml对于Maven项目)有所更改,比如改变了插件版本、添加了新的构建步骤等,需要重新执行构建以确保这些更改生效。
  5. 解决构建错误:在构建过程中遇到错误或异常,清除之前的构建产物可以帮助解决某些由于残留文件导致的问题。
  6. 准备部署:在将项目部署到服务器或发布环境之前,通常需要执行一次完整的构建过程,以确保部署的是最新且经过完整构建的产物。
  7. 多模块项目变更:对于包含多个模块的项目,任何一个模块的变更都可能需要重新clean和package整个项目,以确保所有模块之间的依赖关系得到正确处理。
  8. 环境切换:在不同的开发环境(如开发环境、测试环境、生产环境)之间切换时,可能需要重新构建项目,以适应不同环境的配置和需求。
  9. CI/CD流程:在持续集成/持续部署(CI/CD)的自动化流程中,每次代码提交都会触发自动构建,这通常包括clean和package步骤,以确保生成的构件是最新的。
  10. 性能优化或重构:在进行性能优化或重构代码后,需要重新构建项目以确保性能提升或重构的结果被正确集成。
  11. 版本升级:升级项目所使用的框架或库的版本后,可能需要重新构建以适应新版本的特性和要求。

总之,任何可能影响最终构建产物的情况,都可能需要执行重新clean和package操作。这样做可以确保项目的稳定性和可靠性,避免因为旧的构建产物导致的不一致问题。文章来源地址https://www.toymoban.com/news/detail-830671.html

到了这里,关于javax.net.ssl.SSLHandshakeException: No appropriate protocol的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • java项目实现读写分离,项目连接Linux部署的数据库异常javax.net.ssl.SSLHandshakeException: No appropriate protocol

    1、对项目进行优化实现读写分离,项目启动时报错如下: Caused by: javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate) 原因:javax.net.ssl.SSLHandshakeException:没有适当的协议(协议被禁用或密码套件不合适) 2、bug解决:     注意: useSSL=f

    2024年02月04日
    浏览(51)
  • javax.net.ssl.SSLHandshakeException

    解决办法升级jdk版本或者修改jdk文件 1、对于服务器来说要支持域名并且不进行ssl证书校验,需要升级到jdk1.8的201版本及以上 2、修改…JavaJDKjrelibsecurity目录下java.security文件,添加下面语句到文件内容中

    2024年02月11日
    浏览(41)
  • Macos jdk ssl javax.net.ssl.SSLHandshakeException完美解决

    报了这么一个错误 javax.net.ssl.SSLHandshakeException: Remote host terminated the handshake 网上一大把,测试不能用,谷歌了一下,发现少配置了一个环境变量。 System.setProperty(\\\"jdk.tls.useExtendedMasterSecret\\\", \\\"false\\\");//设置环境变量 /Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home/jre/lib/security/java.se

    2024年02月13日
    浏览(62)
  • 解决远程调用三方接口:javax.net.ssl.SSLHandshakeException报错

    最近在对接腾讯会议API接口,在鉴权完成后开始调用对方的接口,在此过程中出现调用报错:javax.net.ssl.SSLHandshakeException。 当你在进行https请求时,JDK中不存在三方服务的信任证书,导致出现错误javax.net.ssl.SSLHandshakeException:sun.security.validator.ValidatorException:PKIX路径构建失败。

    2024年02月13日
    浏览(49)
  • Java调用Azure证书错误javax.net.ssl.SSLHandshakeException

    一、背景 Azure作为微软的公有云平台,提供了非常丰富的SDK和API让开发人员可以非常方便的调用的各项服务。公司业务需要,我们需要访问Azure上注册的应用程序,需要访问https地址 https://login.microsoftonline.com/​your-​​tenant-id 。 二、错误信息 简短报错信息:javax.net.ssl.SSLHa

    2024年02月06日
    浏览(51)
  • javax.net.ssl.SSLHandshakeException: PKIX path building failed

    错误信息 本地环境缺少ssl证书 一、下载证书          可以通过浏览器下载;也可以使用命令行 1、浏览器 查看证书,直接导出即可 2、命令行 openssl s_client -connect 目标网址:端口号 /dev/null | sed -ne \\\'/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p\\\' 证书名.crt 二、导入证书 1. 将证书移动到

    2023年04月22日
    浏览(82)
  • 解决javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException

    Java Spring应用发送数据报如下问题。 用httpclient访问https资源时,会出现异常,与环境也有关系,有些机器请求正常。 1.复制 附录 代码到文本文件中,改名为InstallCert.java。然后在命令行中执行命令,编译InstallCert.java:  2.再执行以下命令: 说明:网址处不需要输入(https://)信

    2024年02月16日
    浏览(45)
  • 证书异常导致:javax.net.ssl.SSLHandshakeException: sun.security.validator

            当我们应用程序 访问设有https证书的服务 时,若 JRE未安装指定证书 则会提示标题的报错,此时有 两种方式 解决该问题:        按照实际场景,可从信息科、网络处等部门协调获取证书,也可以直接从安装证书的电脑上,通过浏览器下载证书,本文介绍后一种

    2024年01月17日
    浏览(38)
  • javax.net.ssl.SSLHandshakeException:(HTTPS绕过安全认证进行请求链接)

    1、问题: 在使用jsoup爬取数据时,碰到了使用https的网站,遇到报错:javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: validity check failed 2、解决 后自己在网上查了一些资料,找到相关解决代码: 3、方法调用  

    2024年02月08日
    浏览(44)
  • 已解决javax.net.ssl.SSLHandshakeException: SSL握手异常的正确解决方法,亲测有效!!!

    已解决javax.net.ssl.SSLHandshakeException: SSL握手异常的正确解决方法,亲测有效!!! 目录 问题分析 场景描述 报错原因 解决思路 解决方法 总结  博主v:XiaoMing_Java 在开发涉及HTTPS通信的Java应用时, javax.net.ssl.SSLHandshakeException 是一个常见的问题,它发生在客户端与服务器尝试建

    2024年04月12日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包