用于连接到derby数据库的文件路径格式是什么?

时间:2013-02-08 17:46:56

标签: java derby

来自documentation我在连接到derby数据库时没有真正得到我必须指定的内容,给定数据库的路径为java.io.File

以下代码中必须包含哪些内容path

File dbDirectory;

// ...

String protocol = "jdbc:derby:";
conn = DriverManager.getConnection(protocol + path
                + ";create=true");

当然,它应该是系统独立的。 我是否使用以下其中一项?

  • dbDirectory.getAbsolutePath()
  • dbDirectory.getCanonicalPath()

2 个答案:

答案 0 :(得分:1)

我相信getAbsolutePath或getCanonicalPath都可以使用。实际上,只要您指定的相对路径相对于derby.system.home设置,您也可以提供相对路径。

这个问题提供了一些关于三种途径之间差异的有用信息:What's the difference between getPath(), getAbsolutePath(), and getCanonicalPath() in Java?

Derby非常容忍不同的路径设置,并且通常会处理其中任何一个。

但是,如果我有选择的话,我会使用getCanonicalPath,因为它是路径中“最干净”的,并且最不可能受到derby.system.home的意外重新设置的影响。

,如果您打算以这样的方式构建应用程序,即可以在不同的计算机上从一个位置移动到另一个位置,并使用其数据库, ,您可能会发现使用相对路径更方便,因为您的应用程序变得更加“自包含”,您不必处理驱动器映射,主目录文件夹名称差异等方面的差异。

答案 1 :(得分:0)