2

我在应用程序中有一个表,它使用客户端/服务器驱动程序从 Derby DB 加载数据。在 NetBeans 中一切正常,即使在断开 NetBeans DB 服务的情况下,但在运行独立的分布式应用程序时却不行。我已将 derbyclient.jar 包含在类路径中。我在可分发的应用程序文件夹中有 startNetworkServer.bat(不在 /dist 中),它在初始化时在程序中运行。我是德比的新手,所以也许我缺少/不包括重要的东西?


首先我加载 startNetworkServer.bat 文件:

ProcessBuilder pb = new ProcessBuilder("D:/Users/lapa2/Desktop/Skeneris/InventoryController/dist/startNetworkServer.bat");
p = pb.start();

哪个不起作用,我现在通过手动打开 cmd 行来设置它。

然后设置驱动和连接:

private static final String jdbcDriver
= "org.apache.derby.jdbc.ClientDriver";


private static final String jdbcURL
    = "jdbc:derby://localhost:1527/D:/Users/lapa2/Desktop/Skeneris/InventoryController/dist/Lapa;create=true;";

然后我查询我想要的一切:

db = new DataBase(userName,password,databaseName);
    String dbStatement = "select * from "+ schemaName + ".PRECES";
    ResultSet rs = db.executeQuery(dbStatement);

这样做,在 NetBeans 中一切正常,但在运行 .JAR 时没有响应。

4

1 回答 1

0

尝试查看 Derby 嵌入式数据库。打包和分发程序更容易,而且您不必重新创建整个数据库。你在开发过程中所做的一切都将保留下来。

于 2015-05-31T16:35:25.030 回答