您好,欢迎访问一九零五行业门户网

Java连接SqlServer错误如何解决

问题发现这次使用的是sqlserver数据库,之前并没有使用过,但是问题不大,我按照需求文档的步骤连接好sqlserver之后,启动springboot项目,发现了一个报错,如下:
刚开始我以为是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.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

然后去掉:其中的3des_ede_cbc,字符。(图片如下)
然后重新启动项目,建立sql server的安全套连接就没有问题了。
没修改之前的java.security文件:
修改之后的java.security文件:
以上就是java连接sqlserver错误如何解决的详细内容。
其它类似信息

推荐信息