由于JDK17禁用了TLS 1.0,JDBC 驱动 12.10 默认只支持 TLS 1.2+,导致使用jdbc连接的时候出现错误:“com.microsoft.sqlserver.jdbc.SQLServerException: “Encrypt”属性设置为“true”且 “trustServerCertificate”属性设置为“false”,但驱动程序无法使用安全套接字层 (SSL) 加密与 SQL Server 建立安全连接:错误:The server selected protocol version TLS10 is not accepted by client preferences [TLS13, TLS12]。”此时我把jdbc的url连接参数增加“encrypt=true;trustServerCertificate=true;”,依然异常:“com.microsoft.sqlserver.jdbc.SQLServerException: “Encrypt”属性设置为“true”且 “trustServerCertificate”属性设置为“true”,但驱动程序无法使用安全套接字层 (SSL) 加密与 SQL Server 建立安全连接:错误:The server selected protocol version TLS10 is not accepted by client preferences [TLS13, TLS12]。”。经常查询资料遇到此中情况一般有两种解决方法,一个是修改jdk的$JAVA_HOME/conf/security/java.security文件,jdk.tls.disabledAlgorithms=SSLv3 # 移除 TLSv1 和 TLSv1.1;另外就是SQL Sever 2008打SP3补丁,可以在此连接搜索相应补丁 SQL Server 2008 Service Pack 3 ,搜索关键字"SQL Server 2008 Service Pack 3",以下是测试代码: