java - 如何同时加载2种JDBC驱动
大家讲道理
大家讲道理 2017-04-18 09:39:17
0
2
537

在代码中同时添加了sqlserver2008sqlserver2000jdbc的jar包,并且生成了2个连接池对象,每个连接池对象都设置了不同的DriverClass,但是启动的时候依然提示以下错误

2016-7-28 16:02:16 com.microsoft.sqlserver.jdbc.SQLServerConnection Prelogin
警告: ConnectionID:5 ClientConnectionId: 88e86cb1-2464-4d23-be03-9beec06a5e2d Server major version:8 is not supported by this driver.

sqlserver2000依旧使用更高级别的DriverClass加载,如何才能做到同时加载2种不同版本的sqlserver的DriverClass

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

Antworte allen(2)
巴扎黑

是java吗?用的spring吗?想用不同的jar包其实就是想同时连接两个不同的数据库是吗? 如果是spring,请配置两个不同名称的数据源分开使用就行

Ty80

题主这里的问题是涉及到类的加载机制,一般 JDBC 的驱动都是会用 Class.forName("包名.类名") 进行加载,如果两个版本的 JDBC 驱动的包名和类名是一样的,那只能加载其中一个 DriverClass

理解这个就很简单了,那就更改不同的包名呗

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage