尝试连接到 Mysql 数据库时找不到类 com.mysql.jdbc.Driver jdbc

Posted

技术标签:

【中文标题】尝试连接到 Mysql 数据库时找不到类 com.mysql.jdbc.Driver jdbc【英文标题】:class not found com.mysql.jdbc.Driver jdbc when trying to connect to a Mysql Database 【发布时间】:2013-04-30 01:59:20 【问题描述】:

我正在用 java 开发一个 web 应用程序,我试图使用 JDBC 模板(使用 springs dao)连接到 mysql 数据库,但我总是得到:

SEVERE: Servlet.service() for servlet [dispatcher] in context with path [/DealingOfInsiders] threw exception [Request processing failed; 
nested exception is org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class 'com.mysql.jdbc.Driver '] with root cause
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
 [....]

我认为问题来自包含目标类的文件 mysql-connector-java-5.1.25-bin.jar ... 所以我尝试了很多方法来解决这个问题:

我已经用这个 jar 配置了我的项目的构建路径,但它没有工作

我也把文件放到了文件夹里:WEB-INF/lib,没用

我已经在 Eclipse 中为这个 jar 配置了一个类路径变量(preference ->java->buildpath->classpath 变量)它没有工作

我已经把jar文件放到tomcat库里了,但是还是不行

【问题讨论】:

【参考方案1】:

名字后面好像有空格?

'com.mysql.jdbc.Driver '

除此之外,“com.mysql.jdbc.Driver”是正确的。

WEB-INF/lib 文件夹是存放项目特定驱动程序和库的好地方;让 Tomcat 共享文件夹保持最新并不容易。

在 JDBC 时代,您必须使用 Class.forName( clazzName) 加载类以在向 JDBC 请求连接之前注册它,但这不是这里的问题。

【讨论】:

请在单独的问题中询问详细信息。愿意先给我(或其他人,或我们俩)一个赞成票吗? 我需要 15 的声誉才能做到这一点对不起:S【参考方案2】:
 'com.mysql.jdbc.Driver '
                       ^^ // remove this space

【讨论】:

是的,谢谢!似乎这个空间是问题(erf)但现在我得到另一个:java.lang.ClassNotFoundException:org.springframework.dao.DuplicateKeyException 也许你有线索^^ 您的 Web 应用程序库中有所有 Spring JARS 吗?还要检查查询是否正确。 我想,但我不能在 cmets 中发布整个堆栈太长,而且我是新来的,我无法在 6 小时前回答我的话题,我会尝试在互联网上检查并如果我没有找到任何东西,我会回到这里 ^^ 再次感谢 ps:我的网络应用程序库中有每个 jars,我目前正在检查查询【参考方案3】:

我遇到了这个问题,但我使用的是 Postgres 驱动程序,并且我使用的是 Eclipse。如果您使用的是 Tomcat 7,请尝试将 JAR 文件添加到 Tomcat 目录中的 lib 文件夹中。这对我有用。我不必使用 Class.forName() 或将 JAR 放在我的类路径中。希望对您有所帮助。

【讨论】:

以上是关于尝试连接到 Mysql 数据库时找不到类 com.mysql.jdbc.Driver jdbc的主要内容,如果未能解决你的问题,请参考以下文章

使用 ODBC 从 Web 服务器连接到 MS Access 数据库时找不到数据源名称

安装mysqldb python接口时找不到mysql_config

连接到 Derby 网络服务器时找不到数据库错误

无法通过php代码连接到mysql数据库,PHP致命错误:找不到类'MySQLi'

尝试通过 SIngleton 模式连接到 MySQL 数据库 [重复]

测试新模型时找不到 Eloquent 类