【问题标题】:How to connect to database without opening NetBeans?如何在不打开 NetBeans 的情况下连接到数据库?
【发布时间】:2015-09-06 16:28:55
【问题描述】:

我已经创建了一个使用数据库的 Java 应用程序,现在我想将它构建到一个 jar 文件中,并使其能够在没有 NetBeans 的情况下运行数据库。我以为 NetBeans 会自动包含数据库,但事实并非如此。

当我构建 NetBeans 时,它包含在“dist”文件夹中的文件如下所示:

  • 分布
      • derby.jar(可执行 Jar 文件)
      • derbyclient.jar(可执行 Jar 文件)
    • 自述文件
    • WordFinder.jar(可执行 Jar 文件)

当我在关闭 NetBeans 后启动 WordFinder.jar 文件时,除了与数据库相关的代码之外的所有内容都可以工作。

我注意到数据库正在使用“org.apache.derby.jdbc.ClientDriver”,我想知道是否需要使用“org.apache.derby.jdbc.EmbeddedDriver”才能包含它数据库?

我需要包含任何文件吗?我是 Java 数据库的新手,所以请尽量保持说明简单。

【问题讨论】:

    标签: java database jdbc connection derby


    【解决方案1】:

    您需要在您的计算机中启动数据库服务器,为此您需要转到您的 derby 路径 (C:\Program Files\Java\jdk1.8.0_45\db\bin) 并运行 startNetworkServer.bat 文件

    【讨论】:

    • 当我尝试它时,它说它找不到另一个 .bat 文件,该文件显然位于同一个文件夹中......我会再看看它。
    • 它说它无法找到或加载 NetworkServerControl.bat 文件,即使它位于同一个文件夹中,当我尝试手动运行 NetworkServerControl.bat 时它也说了同样的话。 .
    • 您是在运行脚本之前将该目录放入 PATH 中,还是在运行脚本之前 cd 到该目录?或者您没有执行任何操作,而是尝试在当前目录位于其他位置时运行该脚本?
    【解决方案2】:

    我可能晚了一年,但看到 cmets,我假设问题尚未解决。我有同样的问题,并想展示我是如何解决它的。注意我没有使用嵌入式 derby 数据库。

    1) 我更改了连接字符串。而不是通常的 "jdbc:derby://localhost:1527/myDB;create=true;...." ,我把通常可以在 C:\Users\myPC\.netbeans 下找到的数据库的确切位置-德比\myDB

    2) 清理并构建项目,它应该为您提供“dist”文件夹,该文件夹将包含项目的 jar 文件以及“lib”文件夹。

    3) 启动位于 derby 文件夹下 bin 文件夹中的 StartNetworkServer.bat。 cmd 会显示“Apache Derby Network Server blah blah blah started and ready to accept connections on port 1527”

    4) 完成这些后,运行 jar 文件,即使 netbeans IDE 关闭,它也应该运行。

    就是这样。这就是我在不打开 Netbeans IDE 的情况下让我的工作的方式。希望对您有所帮助。

    【讨论】:

    • 哈哈,已经解决了,就像一年前一样。对此感到抱歉。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-08-15
    • 2011-05-27
    • 2018-11-06
    • 2021-05-15
    • 2012-07-11
    • 2017-10-09
    • 1970-01-01
    相关资源
    最近更新 更多