Java连接SqlServer错误怎么解决

开发技术 作者:iii 2024-05-09 03:45:01
这篇文章主要讲解了“Java连接SqlServer错误怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java...

这篇文章主要讲解了“Java连接SqlServer错误怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java连接SqlServer错误怎么解决”吧!

    问题发现

    这次使用的是SqlServer数据库,之前并没有使用过,但是问题不大,我按照需求文档的步骤连接好SqlServer之后,启动SpringBoot项目,发现了一个报错,如下:

    Java连接SqlServer错误怎么解决

    刚开始我以为是SqlServer连接问题呢,于是便去查看数据库,发现数据库一切正常,我首先第一时间问了我的同事,他们是否有这样的问题,发现他们并没有,于是我便开始了我最拿手的环节,面向百度编程。

    开始解决

    具体报错信息是这样,于是我便开始了百度

    报错:ERROR c.a.d.p.DruidDataSource$CreateConnectionThread [Druid-ConnectionPool-Create-1218864105] create connection SQLException, url:jdbc:sqlserver://47.114.91.217:1433;DatabaseName=PileTestingSystem, errorCode 0, state 08S01

    首先我进行了中文翻译

    中文翻译错误:c.a.d.p.DruidDataSource$CreateConnectionThread[Druid-ConnectionPool-Create-1218864105]创建连接SQLException,url:jdbc:sqlserver://47.114.91.217:1433;DatabaseName=PileTestingSystem,错误代码0,状态08S01
    com.microsoft.sqlserver.jdbc.SQLServerException:驱动程序无法使用安全套接字层(SSL)加密建立到SQL Server的安全连接。错误:“客户端首选项[TLS12]不接受服务器选择的协议版本TLS10”。客户连接ID:c8434f3c-5f82-4cf2-b111-099e140f33d0
    在com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:2670)~[mssql-jdbc-6.4.0.jre8.jar:?]

    这个错误主要就是驱动程序无法使用安全套(SSL)加密建立到SQL Server的安全连接

    解决方法

    最终在我的查询下,找到了两种解决方法,现在提供给大家

    方法一

    如果使用的是jdk1.8的话,先要找到自己安装JDK目录下的java.security文件并进行修改,
    本人目录如下:D:\\jdk\\jre\\lib\\security下就会有这个java.security文件
    具体的修改情况如下 :

    打开文件后,注释掉这三行代码(也就是在这三行代码之前加 # ):

    jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, RC4, DES, MD5withRSA,
    DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC,anon, NULL,
    include jdk.disabled.namedCurves

    然后重新启动项目,建立SQL Server的安全套连接就没有问题了。

    图片如下:

    没修改之前的java.security文件:

    Java连接SqlServer错误怎么解决

    修改之后的java.security文件:

    Java连接SqlServer错误怎么解决

    方法二

    打开文件后,找到这三行代码:

    jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, RC4, DES, MD5withRSA,
    DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC,anon, NULL,
    include jdk.disabled.namedCurves

    然后去掉:其中的3DES_EDE_CBC,字符。(图片如下)

    然后重新启动项目,建立SQL Server的安全套连接就没有问题了。

    没修改之前的java.security文件:

    Java连接SqlServer错误怎么解决

    修改之后的java.security文件:

    Java连接SqlServer错误怎么解决

    感谢各位的阅读,以上就是“Java连接SqlServer错误怎么解决”的内容了,经过本文的学习后,相信大家对Java连接SqlServer错误怎么解决这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是捷杰建站,小编将为大家推送更多相关知识点的文章,欢迎关注!

    原创声明
    本站部分文章基于互联网的整理,我们会把真正“有用/优质”的文章整理提供给各位开发者。本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
    本文链接:http://www.jiecseo.com/news/show_25384.html
    java sqlserver