尝试通过 servlet 连接 mySql 时出现“java.lang.ClassNotFoundException”

Posted

技术标签:

【中文标题】尝试通过 servlet 连接 mySql 时出现“java.lang.ClassNotFoundException”【英文标题】:"java.lang.ClassNotFoundException" when trying to connect mySql via servlet 【发布时间】:2015-07-02 17:46:50 【问题描述】:

我尝试连接到 mysql 数据库(当我在没有 servlet 的情况下连接到它时完美运行)并一直收到以下错误:

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

这个错误意味着(据我所知)我的项目中没有一些 jar 文件。但这不是真的,因为我有那些罐子。 !而且,如果我真的没有那些jar,我无论如何都无法连接到数据库。

我错过了什么?

【问题讨论】:

如果你运行的是tomcat,你可以把它放到lib目录下吗? 【参考方案1】:

通过查看这些标签,这是一个 Web 应用程序。因此,错误清楚地表明您在类路径中没有 SQL Venders Driver jar。

您可以将此 jar 放入您的 Project/WEB-INF/lib 文件夹中,然后重新启动您正在使用的任何 Web 服务器。然后你就可以走了。

【讨论】:

【参考方案2】:

您的 mysql jdbc jar 驱动程序不在您的类路径中。

如果您从 servlet 运行它,它会使用您的 servlet 容器的类路径。这个类路径可能包含它。

在可能的地方找到 mysql-connector-java,然后复制到你的类路径中。

【讨论】:

对不起,我缺乏知识,但我不知道该怎么做。我在这里看到了一个指南,说只将其复制到 src 文件夹。这是正确的吗?无论如何——他的方法并不能解决问题。 @dennisbergkamp 您在一个大型问答网站上,提出您的问题并提出。如果你问很多,这绝对不是问题。 你能解释一下如何将 jar 添加到类路径吗?我没有找到答案,也发布了它,但还没有回答。谢谢 @dennisbergkamp 是的,但这已经是一个不同的问题了。用正确的拼写询问这个作为新的(忘记“u”等),并提供您正在使用的技术的确切细节。 工作!!谢谢你们所有人(我把罐子放在贾法尔阿里告诉我的地方)

以上是关于尝试通过 servlet 连接 mySql 时出现“java.lang.ClassNotFoundException”的主要内容,如果未能解决你的问题,请参考以下文章

找不到 MySQL - 尝试从命令行访问 MySQL 时出现“找不到命令”错误

尝试连接 mysql dbms 时出现 ClassNotFoundException?

MySQL 7.0.6-IR3 版本尝试连接数据库时出现问题

Spring Boot,Java,Docker Compose,尝试在两个容器(mysql,my-api)之间建立连接时出现“连接被拒绝”

servlet从mysql中取数据时出现的汉字编码问题

尝试从 JSP 表单调用 servlet 时出现 404 错误