从可执行jar文件访问derby数据库

时间:2017-06-29 07:32:04

标签: java database netbeans connection derby

我用netby使用derby做了一个java项目。该项目在IDE中运行良好,但是当我构建它并从.jar文件运行而不从netbeans启动服务器时,它显示:

"java.net.ConnectException : Error connecting to server localhost on port 1527 
with message Connection refused: connect."

如何在没有netbeans的情况下连接到客户机上的数据库?

1 个答案:

答案 0 :(得分:0)

您需要知道数据库服务器的IP,因为localhost127.0.0.1指的是本地计算机上安装的数据库,如果您在客户端计算机上运行该应用程序,则非常确定,这个DB不在本地。如果多个客户端应连接到同一个数据库,则需要指定确切的IP地址。

如果您只需要每个应用程序的数据库,那么您可以使用嵌入式Derby,它可以启动和停止您的应用程序,因此您不需要外部服务器(非常好的解决方案,以防这是唯一使用的应用程序这个DB):

public String driver = "org.apache.derby.jdbc.EmbeddedDriver";
...
Class.forName(driver).newInstance();

获取嵌入式连接

public String protocol = "jdbc:derby:";
...
conn = DriverManager.getConnection(protocol + "derbyDB;create=true", props);

完全构造的嵌入式连接URL如下所示:

jdbc:derby:derbyDB;create=true