【发布时间】:2018-10-31 14:16:43
【问题描述】:
我正在尝试在使用 IntelliJ Ultimate 2018.2.5 的 Windows 10 机器上使用 Java JSP、Tomcat 9 和 MySQL 服务器编写 Web 应用程序。
问题是我在运行以下代码行时总是得到ClassNotFoundException:Class.forName("com.mysql.jdbc.Driver");
我遵循了关于如何连接到 SQL 服务器的官方文档:https://www.jetbrains.com/help/datagrip/2017.1/getting-started-with-datagrip.html
查看->工具窗口->数据库->+->数据源->MySQL。
请注意:我故意没有指定数据库,因为我的程序不能假设数据库已经存在。它必须先检查并创建它,如果没有。由于程序永远无法连接到服务器,因此数据库从未创建过,因此不存在。我担心这可能是问题的根源,但按“测试连接”会导致连接成功(如屏幕截图所示)。
经过一番谷歌搜索,我手动下载了 mysql-connector-java-8.0.13 并将 jar 文件放入 IntelliJ 安装目录的 library 部分。然后我去 File->Project Structure->Libraries->+ 并选择了连接器。结果如下:
IntelliJ 现在确实在外部库下列出了连接器。
然而,问题仍然存在。
请记住,我是 IntelliJ 的新手,我几乎没有使用 Java 数据库的经验。为此,我通常使用 C++。
更新 1: 什么样的项目:New Project->Java Enterprise->Web Application(选择Java 11、Tomcat 9.0.12和4.0版本)。其余的,除了项目名称和位置,只是标准设置。
【问题讨论】:
-
IntelliJ 的数据库工具窗口与你的项目无关,真的。你的项目结构是什么?您是否使用了一些构建工具,例如 Maven 或 Gradle,请使用有关您的实际项目的更多详细信息来更新问题。
-
我刚刚更新了问题。见底部。
-
您实际上是如何从 Intellij 运行您的类/应用程序的?你使用的是构建结构,只是一个 java 主类?
-
不,没有主要的。 IntelliJ 执行名为 index.jsp 的任何文件。 jsp 文件是结合了 HTML(也可以选择 CSS)和 Java 的文件。这个 index.jsp 文件调用了一个负责设置数据库的 java 类。
-
我只是尝试通过 Maven 添加库。仍然收到错误。
标签: java mysql intellij-idea database-connection