首页 > 解决方案 > Class.forName("com.mysql.jdbc.Driver") 错误jsp

问题描述

我是 JSP 的新手。我正在尝试使用 sublime 和 xwampp 做一个基本的 JSP 和 MySQL 连接程序。在运行 login.jsp 页面时,我得到以下信息:

在此处输入图像描述

在此处输入链接描述

标签: javajspxampp

解决方案


Web 应用程序抛出的AClassNotFoundException表示在运行时类路径中找不到您引用的类。在您的情况下,该类是com.mysql.jdbc.Driver. 当您在运行时按名称显式加载类时,这是一个更大的风险,因为 Java 编译器无法检查所需的类是否存在。当然,对于 JSP 来说,编译时不一定与运行时区分开来。

当然,您不能只命名一个类并期望 Java 自动将它定位到某个未指定的位置、检索它并加载它。您需要在您的 Web 应用程序中或在您的应用程序服务器(即 Tomcat)为每个 Web 应用程序提供的类中包含所需的类及其所有依赖项。

对于第三方类,例如有问题的类,通常的方法是获取一个或多个包含该类及其依赖项的 Jar 文件,并将它们放入lib/Web 应用程序的 War 文件或部署目录的目录中。确保它们的所有权和权限允许应用程序服务器读取它们。您可以在 MySQL 的网站上找到所需的 Jar 文件。您正在寻找他们的“ Connector/J ”。

还有一个单独的问题是如何确保您的构建/打包系统在您的 War 中自动包含所需的 Jar 或以其他方式部署它,但是您在问题中没有提出任何可以让我们解决这个问题的内容。


推荐阅读