7

对于单元测试,我使用 derby 内存数据库。

测试运行时是否有机会使用 Eclipse Datasource Explorer 之类的工具连接到该数据库?

我用谷歌搜索了很多,有时我发现了类似的东西:

连接 URL:jdbc:derby://localhost:1527/memory/mydb...

但这对我不起作用。

它说 1527 是默认端口。

是否可以使用 eclipse explorer 之类的工具连接到 derby 内存数据库?数据库是否打开连接端口来连接?还是我必须配置一些特别的东西才能使它工作?

谢谢,亚历克斯

4

1 回答 1

4

嗨,经过更多研究,我得到了解决方案。

要连接到嵌入式 derby 内存数据库,您必须在应用程序中启动 NetworkServerControl。之后,您可以使用 eclipse DTP Plugin / Datasource Explorer 连接到 derby 数据库。

创建内存数据库和启动 NSC 的代码如下所示:

public static void main(String args[])
{
   NetworkServerControl nsc = new NetworkServerControl(InetAddress.getByName("localhost"), 1527);
   nsc.start(new PrintWriter(System.out, true));

   Class.forName("org.apache.derby.jdbc.EmbeddedDriver");

   Connection c = DriverManager.getConnection("jdbc:derby:memory:testdb;create=true");

}

您必须包含 jdk7 (lib\db) 附带的 derby.jar 和 derbynet.jar 才能创建 NetworkServerControl 和数据库。

之后,只要您的应用程序(和数据库)正在运行,您就可以连接到数据库。连接 URL 为:jdbc:derby://localhost:1527/memory:testdb

用户和密码:您的选择

问候,

亚历克斯

于 2012-08-04T16:39:22.620 回答