java - Class.forName("com.mysql.jdbc.Driver") 错误jsp
问题描述
我是 JSP 的新手。我正在尝试使用 sublime 和 xwampp 做一个基本的 JSP 和 MySQL 连接程序。在运行 login.jsp 页面时,我得到以下信息:
解决方案
Web 应用程序抛出的AClassNotFoundException
表示在运行时类路径中找不到您引用的类。在您的情况下,该类是com.mysql.jdbc.Driver
. 当您在运行时按名称显式加载类时,这是一个更大的风险,因为 Java 编译器无法检查所需的类是否存在。当然,对于 JSP 来说,编译时不一定与运行时区分开来。
当然,您不能只命名一个类并期望 Java 自动将它定位到某个未指定的位置、检索它并加载它。您需要在您的 Web 应用程序中或在您的应用程序服务器(即 Tomcat)为每个 Web 应用程序提供的类中包含所需的类及其所有依赖项。
对于第三方类,例如有问题的类,通常的方法是获取一个或多个包含该类及其依赖项的 Jar 文件,并将它们放入lib/
Web 应用程序的 War 文件或部署目录的目录中。确保它们的所有权和权限允许应用程序服务器读取它们。您可以在 MySQL 的网站上找到所需的 Jar 文件。您正在寻找他们的“ Connector/J ”。
还有一个单独的问题是如何确保您的构建/打包系统在您的 War 中自动包含所需的 Jar 或以其他方式部署它,但是您在问题中没有提出任何可以让我们解决这个问题的内容。
推荐阅读
- xml - XSLT 从 HTML xml 中提取值
- recursion - Phoenix控制器中的递归更新功能
- java - Double.parseDouble 的修复结果被忽略错误消息
- angular - 我无法使用 Ionic 3 从 http.post 响应中获取正文数据,但是在使用 Postman 时我正在获取数据
- wordpress - Google 跟踪代码管理器数据层变量未定义 - Woocommerce
- python - 如何在命令行中确定一个文件是一个字符串以及它是否存在
- json - 如何在 MERN 应用程序中存储和访问大型 JSON 文件?
- java - 存储有关在 java 中对对象执行的操作的数据
- javascript - 如何在服务器上运行浏览器功能?
- ios - 相同 Double 值的奇怪输出