关于JDK6兼容sql server2016的兼容问题

本文介绍了在JDK6环境下遇到与SQL Server 2016的兼容问题,详细描述了使用sqljdbc4.jar时的错误情况。作者提出解决方案,即替换驱动包为jtds.jar,通过JNDI方式获取数据源,避免了代码和环境配置的修改,成功解决了兼容问题。
摘要由CSDN通过智能技术生成

本文是记录本人,在实际开发项目中,遇到的一个兼容性问题;项目的运行环境是JDK6(公司项目,无法修改版本),而数据库确实sql server2016,之前还遇到sql server2000的,都是兼容性问题,很让人头疼。

正常来说,低版本sql server用sqljdbc.jar,高版本用sqljdbc4.jar(貌似从sql server2005版开始),配置驱动类是不一致的,具体细节,自行查找。

我的项目环境:JDK1.6,SQL SERVER2016

出现的问题描述:当JDK版本为1.6时,正常调用sqljdbc4.jar包的启动类,获取数据库连接时,会直接报错;而当JDK版本为1.7时,却没有问题;

以下是,JDK1.6+SQL SERVER2016+sqljdbc4.jar启动类,调用时,直接报错;

而JDK1.6+SQL SERVER2008+sqljdbc4.jar启动类,这样调用是没有问题的。

警告: TDSChannel ( ConnectionID:13 TransactionID:0x0000000000000000) SSL handshake failed: java.lang.RuntimeException: Could not generate DH keypair
com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误: java.lang.RuntimeException: Could not generate DH keypair。
	at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(Unknown Source)
	at com.microsoft.sqlserver.jdbc.TDSChannel.throwSSLConne
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值