用Java连接sqlserver数据库时候几个jar包的区别分析
今天在群里看见有人问了这个问题,那就把我自己总结的知识拿出来与大家分享一下吧..当然可能还有什么不对的地方,希望指出:
***msbase.jar、mssqlserver.jar、msutil.jar(支持sql2000):
早期的连接数据库Jar包:在连接数据时候需要手动导入驱动包。即手动导入class.forName(驱动名称);
***SQLServerJDBCDriver2.0----sqljdbc.jar和sqljdbc4.jar
新版JDBC连接数据库Jar包,支持sql2005,sql2008
Sqljdbc.jar
使用sqljdbc.jar类库时,应用程序必须首先按class.forName(驱动名称)注册驱动程序。Jdk1.6以上版本不推荐使用.
Sqljdbc4.jar
在JDBCAPI4.0中,DriverManager.getConnection方法得到了增强,可自动加载JDBCDriver。因此,使用sqljdbc4.jar类库时,应用程序无需调用Class.forName方法来注册或加载驱动程序。调用DriverManager类的getConnection方法时,会从已注册的JDBCDriver集中找到相应的驱动程序。sqljdbc4.jar文件包括“META-INF/services/java.sql.Driver”文件,后者包含.sqlserver.jdbc.SQLServerDriver作为已注册的驱动程序。现有的应用程序(当前通过使用Class.forName方法加载驱动程序)将继续工作,而无需修改。
注意:sqljdbc4.jar类库要求使用6.0或更高版本的Java运行时环境(JRE)。