首页 > 解决方案 > 第一次将数据库连接到 NetBeans

问题描述

这是来自 Java 编程论坛的转贴。我在这里重新发布,因为我担心流量低。

为了了解数据库,我正在阅读 2014 年出版的这本 Murach 书。我使用的是 NetBeans 8.2、Tomcat 8.0,并安装了两个 MySQL 服务器,5.5 版和 8.0 版。我还安装了 MySQL Workbench 8.0 CE 和 Tomcat 9.0。我已经获得了与 Tomcat 服务器一起使用的预构建 Web 应用程序。我正在进行的练习是最后的测试运行,以确保我需要的所有软件都已正确安装和配置。在这一点上,我真正知道的是Java。我对数据库一无所知。我只是盲目地遵循安装说明。这是我开始学习之前需要做的最后一件事。

从书中:

练习 3-3:运行使用数据库的 Web 应用程序

本练习让您运行本书中介绍的两个使用数据库的 Web 应用程序。这迫使您为本书使用的两个数据库注册连接。为此,您必须按照附录 A (PC) 或 B (Mac) 中的说明安装和配置 MySQL 数据库服务器。

使用 Murach 数据库

  1. 打开 book_apps 目录中的 ch12email 项目。

  2. 如果显示一个对话框,指出需要向 NetBeans 注册数据库连接,请单击此对话框的关闭按钮。然后右键单击项目,选择 Resolve Data Sources Problem 项,并使用出现的对话框解决数据源问题并为 murach 数据库注册数据库连接。

  3. 运行应用程序以查看它是如何工作的。输入您的姓名和电子邮件地址并单击“立即加入”按钮后,您的条目将保存到 MySQL 数据库中。

  4. ...

  5. ...

我能够打开该项目。
在此处输入图像描述

我没有收到数据库连接对话框警告,但如果我右键单击该项目,我可以选择 Resolve Data Sources。将打开一个对话框,允许我“添加连接”。 在此处输入图像描述

这样做会打开新建连接向导。 在此处输入图像描述

在寻找有关 Stack Overflow 的帮助时,我遇到了这个建议:

检查 Web Pages -> META-INF 中的 context.xml 文件,username="user" 必须与数据库用户相同,在我的情况下是 root,这解决了连接错误

这提示我对照 context.xml 检查这些连接向导登录框。

我的 context.xml:

<Resource name="jdbc/murach" auth="Container" 
        driverClassName="com.mysql.jdbc.Driver" 
        url="jdbc:mysql://localhost:3306/murach" 
        username="murach_user" password="sesame" 
        maxActive="100" maxIdle="30" maxWait="10000" 
        logAbandoned="true" removeAbandoned="true" 
        removeAbandonedTimeout="60" type="javax.sql.DataSource" />

此信息似乎匹配,但是当我单击“测试连接”时,我收到此错误:

无法使用 com.mysql.jdbc.Driver 建立与 jdbc:mysql://localhost:3306/murach 的连接(无法加载身份验证插件“caching_sha2_password”。)

我发现的许多答案似乎都建议创建一个新数据库或编辑一个现有数据库,但由于我自己还没有建立一个,我还不知道该怎么做。


上述陈述是为什么我认为这里流行的解决方案链接对我来说还不够的基础。我将继续研究它,但是对于数据库是什么以及它如何与其他所有事物一起工作,有太多未知的方面能够轻松解决它。这在这里变得杂草丛生,但现在我被要求为我的问题辩护。这样的答案和这样的答案之间有天壤之别. 在第一个答案中,您几乎不需要知道任何事情。第二个提供未指定应用程序的关键信息。现在看来,我遇到困难的是答案,而不是问题,但我相信/希望每个帖子的问题都能引发类似的答案。此外,建议的帖子是关于 Eclipse 而不是 NetBeans 的问题,如果这无关紧要,我也不知道。

标签: javamysqldatabase-connectionnetbeans-8sha2

解决方案


推荐阅读