关于java连接sql server 2008遇到的各种问题及解决办法

  1. 解决java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver问题    

            学习java连接sql server 2008数据库时候,遇到java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver问题,这是因为jdbc驱动加载不成功。据说JDK1.8及以上版本的JDK已经不带jdbc驱动了,所以我特意去微软官方下载了Microsoft JDBC Driver 6.0 for SQL Server,里面包含了我们需要的驱动包和插件。解压后找到Java\Microsoft JDBC Driver 6.0 for SQL Server\sqljdbc_6.0\chs\jre8\sqljdbc42.jar,(因为我的JDK是1.8,所以选jre8目录)将sqljdbc42.jar复制到你项目里的WEB-INF下的lib下面,这时还不能使用,编译器还找不到它。然后点 : 项目---属性----Java构建路径---库----添加jar  将我们的sqljdbc42.jar导入即可。


2.解决Tomcat - java.lang.UnsupportedClassVersionError:Unsupported major.minor version 52.0 (unable to load class com.microsoft.sqlserver.jdbc.SQLS问题

JDK的版本号对应:


J2SE 9 = 53
J2SE 8 = 52
J2SE 7 = 51
J2SE 6.0 = 50
J2SE 5.0 = 49
JDK 1.4 = 48
JDK 1.3 = 47
JDK 1.2 = 46
JDK 1.1 = 45
由此可知,上述错误是由于jTDS需要jdk8

由于我的MyEclipse默认jre是1.6,所以我们要进项目---属性----Java构建路径---库-中把jre1.6删除,导入我们需要的jre1.8路径。


3.解决警告: Failed to load the sqljdbc_auth.dll cause : no sqljdbc_auth in java.library.path问题

因为sqljdbc.auth.dll没找到,要把它所有目录放到系统变量Path或直接放到windows\System32下,不能把它打包到jar里,也不是放在classpath上。(sqljdbc.auth.dll在上述Microsoft JDBC Driver 6.0 for SQL Server\sqljdbc_6.0\chs\auth路径下),问题解决。
 
  

上代码:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");  //1.加载驱动程序

conn=(Connection)DriverManager.getConnection("jdbc:sqlserver://localhost:1433;integratedSecurity=true;DatabaseName=myJsp");//使用windows身份验证


你可能感兴趣的:(关于java连接sql server 2008遇到的各种问题及解决办法)