java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
因为这个问题折腾了以上午,终于解决了,做下记录:
错误提示为:java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
在出这个问题前,首先确保连接的代码不存在语法上的错误,数据库的登录名以及密码都正确,好了,下面开始:
出了两个问题:
1、我原来的连接语句为
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection conn=DriverManager.getConnection(
"jdbc:microsoft:sqlserver://localhost:1433;databasename=XX","sa","123");
改成一下即可
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn=DriverManager.getConnection(
"jdbc:sqlserver://localhost:1433;databasename=XX","sa","123");
原因是上面sqlserver2000的连接方式,而下面是sqlserver05或者08的连接方式,这个地方要注意!
2,改完后,我发现还是有问题,百思不得其解,突然发现我下载的连接驱动包里面有两个jar文件,而我使用的是sqljdbc.jar,想想,换一个会不会好,后来换成了另一个sqljdbc4.jar,完美解决,原因如下:
以下是msdn中 JDBC Driver的系统要求中的解释:我们清楚的看到 sqljdbc.jar 类库要求使用 5.0 版的 Java 运行时环境 (JRE)。连接到数据库时,在 JRE 6.0 上使用 sqljdbc.jar 会引发异常。而我的jre为6.0的,自然报异常。
JAR |
说明 |
---|---|
sqljdbc.jar |
sqljdbc.jar 类库提供对 JDBC 3.0 的支持。 sqljdbc.jar 类库要求使用 5.0 版的 Java 运行时环境 (JRE)。连接到数据库时,在 JRE 6.0 上使用 sqljdbc.jar会引发异常。 注意:
JDBC 驱动程序不支持 JRE 1.4。使用 JDBC Driver 时必须将 JRE 1.4 升级至 JRE 5.0 或 JRE 6.0。
在某些情况下,您可能需要重新编译应用程序,因为它可能与 JDK 5.0 或更高版本不兼容。 有关详细信息,请参阅 Sun Microsystems 网站上的文档。 |
sqljdbc4.jar |
sqljdbc4.jar 类库提供对 JDBC 4.0 的支持。它不仅包括 sqljdbc.jar 的所有功能, 还包括新增的 JDBC 4.0 方法。 sqljdbc4.jar 类库要求使用 6.0 版的 Java 运行时环境 (JRE)。在 JRE 1.4 或 5.0 上 使用 sqljdbc4.jar 会引发异常。 注意:
如果应用程序必须在 JRE 6.0 上运行,即使该应用程序不使用 JDBC 4.0 功能
,也应使用 sqljdbc4.jar。 |
相关文章
- [Java基础] java的守护线程与非守护线程
- java -version 问题 : C:ProgramDataOracleJavajavapath;
- Java IO--内存操作流ByteArrayInputStream/ByteArrayOutputStream
- 【Java】java扩展机制SPI 实现
- Java反射异常:java.lang.NoSuchFieldException
- 数据结构Java实现03----单向链表的插入和删除b
- Java实现 第十一届 蓝桥杯 (高职专科组)省内模拟赛
- Java实现 LeetCode 330 按要求补齐数组
- Java实现格子取数问题
- Java实现旅行商问题
- Java实现分割矩形
- Java实现 蓝桥杯VIP 算法提高 5-3日历
- (转载)java多态(2)-------Java转型(向上或向下转型)
- mysql、sqlserver、oracle分页,java分页统一接口实现
- Java_JDBC一般写法
- 【JAVA】java中char类型数组用数组名打印结果不是地址值而是数组内容
- 大型Java web项目分布式架构演进-分布式部署
- 使用Java标准的java.util.EventListener实现观察者-发布者设计模式
- 华为OD机试 - 相同数字组成图形的周长(Java & JS & Python)
- 【java】Java生成微信小程序二维码
- Java设置时间为0时0分0秒和23时59分59秒
- 从 Java 开始进入 Kotlin的世界: From Java to Kotlin: JKotlinor
- java中dao层和service层的区别是什么?
- JavaSE学习总结(四)——Java面向对象十分钟入门
- Java他们其中一个IO(一)
- jsp - java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
- 【JAVA面试必会】JMM高并发详解(java内存模型、JMM三大特征、volatile关键字 )
- Java并发编程面经2
- JAVA开发讲义(一)-Java的自白