用Java连接sqlserver数据库时候几个jar包的区别分析

时间:2022-01-22 16:30:55

今天在群里看见有人问了这个问题,那就把我自己总结的知识拿出来与大家分享一下吧..当然可能还有什么不对的地方,希望指出:

***msbase.jar、mssqlserver.jar、msutil.jar(支持sql2000):

早期的连接数据库Jar包:在连接数据时候需要手动导入驱动包。即手动导入class.forName(驱动名称);

***SQL Server JDBC Driver 2.0----sqljdbc.jar和sqljdbc4.jar

新版JDBC连接数据库Jar包,支持sql2005,sql2008

Sqljdbc.jar

使用 sqljdbc.jar 类库时,应用程序必须首先按class.forName(驱动名称)注册驱动程序。Jdk1.6以上版本不推荐使用.

Sqljdbc4.jar

在 JDBC API 4.0 中,DriverManager.getConnection 方法得到了增强,可自动加载 JDBC Driver。因此,使用sqljdbc4.jar 类库时,应用程序无需调用 Class.forName 方法来注册或加载驱动程序。调用 DriverManager 类的 getConnection 方法时,会从已注册的 JDBC Driver 集中找到相应的驱动程序。sqljdbc4.jar 文件包括“META-INF/services/java.sql.Driver”文件,后者包含.sqlserver.jdbc.SQLServerDriver 作为已注册的驱动程序。现有的应用程序(当前通过使用 Class.forName 方法加载驱动程序)将继续工作,而无需修改。

注意: sqljdbc4.jar 类库要求使用 6.0 或更高版本的 Java 运行时环境 (JRE)。