总结:jdk1.8及以下连sqlserver只需驱动,1.8以上除了驱动还需JAXB API。
1 java连SQLServer必须要先下驱动。否则出现:
java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
下载Microsoft JDBC Driver for SQL Server
官方下载地址:http://www.microsoft.com/zh-cn/download/details.aspx?id=11774
Microsoft SQL Server JDBC Driver 3.0sqljdbc_3.0chsauthx64sqljdbc_auth.dll文件 复制到C:WindowsSysWOW64目录下。(64bit系统)
Microsoft SQL Server JDBC Driver 3.0sqljdbc_3.0chsauthx86sqljdbc_auth.dll 文件 复制到 C:WindowsSystem32 (32位系统)
添加sqljdbc4.jar包,配置路径。就可以了。
2 出现javax.xml.bind.JAXBException
JAXB API是java EE 的API,因此在java SE 9.0 中不再包含这个 Jar 包。
java 9 中引入了模块的概念,默认情况下,Java SE中将不再包含java EE 的Jar包
而在 java 6/7 / 8 时关于这个API 都是捆绑在一起的
解决方案一:
降低JDK 版本到 JDK 6/7/8,并要有相对应得版本驱动。jdk6驱动已不支持。
解决方案二:(亲测可行)任意版本驱动都可
手动加入以下依赖Jar包
要解决这个问题,我导入了下面这四个Jar包修复成功。
javax.activation-1.2.0.jar
http://search.maven.org/remotecontent?filepath=com/sun/activation/javax.activation/1.2.0/javax.activation-1.2.0.jar
jaxb-api-2.3.0.jar
http://search.maven.org/remotecontent?filepath=javax/xml/bind/jaxb-api/2.3.0/jaxb-api-2.3.0.jar
jaxb-core-2.3.0.jar
http://search.maven.org/remotecontent?filepath=com/sun/xml/bind/jaxb-core/2.3.0/jaxb-core-2.3.0.jar
jaxb-impl-2.3.0.jar
http://search.maven.org/remotecontent?filepath=com/sun/xml/bind/jaxb-impl/2.3.0/jaxb-impl-2.3.0.jar
下载上面这些文件和复制他们到任意文件夹并build path( libs文件夹更好,不用改动位置)
添加他们导入到Build Path中
重新运行即可