JDBC报错:Cannot find class: com.mysql.jdbc.Driver
连接数据库的jar出现异常(通常报错:Cannot find class:com.mysql.jdbc.Drive),
问题:Connector的jar已经导入,还是出现 Cause: java.sql.SQLException: Error setting driver on UnpooledDataSource. Cause: java.lang.ClassNotFoundException: Cannot find class: com.mysql.jdbc.Driver。
有以下几种可能:
1.配置书写错误:配置文件value值引号内不能有空格,属性文件配置信息末尾不能有空格
(1)打开属性文件中com.mysql.jdbc.Driver后发现多了一个空格(如下我标出了),所以写属性文件时一定别多输入多余的空格了。
jdbc.driverClassName=com.mysql.jdbc.Driver(此处有空格)
(2)配置文件中的value值的" "号中前面或后面有空格,主要是一些框架的核心配置文件,比如mybatis的全局配置文件如下:
<property name="driver" value="(此处有空格) com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://127.0.0.1:3306/mybatis" /> <property name="username" value="root" /> <property name="password" value="123456" />
(3)特别提醒:一般初学者,非常非常非常非常容易犯上面两个错误,所以当项目报错时,先别急,先查看属性文件和配置文件中配置信息的前后中间有没有空格,一般都是这个问题。
2.引包错误
在java项目中,只需要引入mysql-connector-java-5.1.7-bin.jar就可以运行java项目。
在web项目中,必须把mysql-connector-java-5.1.7-bin.jar导入到tomcat或项目的lib目录下面!
当Class.forName("om.mysql.jdbc.Driver");时myeclipse是不会去查找字符串,不会去查找驱动的。所以只需要把mysql-connector-java-5.1.7-bin.jar拷贝到tomcat或项目下lib目录就可以了。