【问题标题】:Where should I put other components (like .mdb) in Netbeans project在 Netbeans 项目中我应该将其他组件(如 .mdb)放在哪里
【发布时间】:2016-03-11 07:39:48
【问题描述】:

我是 Netbeans 的新手,我正在做一个使用 MS Access 数据库(.mdb 或 .accdb)操作的项目。
在我的代码中,我需要编写数据库文件的整个目录才能连接它,例如:
conn = DriverManager.getConnection("jdbc:ucanaccess://D:/abc/def/db.accdb");
我应该将我的数据库文件放在哪个文件夹中,这样我就无需编写整个目录来连接它,例如:conn = DriverManager.getConnection("jdbc:ucanaccess://db.accdb");

【问题讨论】:

    标签: java netbeans


    【解决方案1】:

    您不想在代码中硬编码数据库路径:好点子!

    不幸的是,UCanAccess 似乎没有提供自动查找数据库的特殊文件夹:它只是试图在声明的位置找到它。所以如果你使用相对路径,它将依赖Java处理和Javadoc for File类说:

    默认情况下,java.io 包中的类总是根据当前用户目录解析相对路径名。此目录由系统属性 user.dir 命名,通常是调用 Java 虚拟机的目录。

    如果你在window下使用短链接,你可以在短链接中指定一个起始目录,但我不会依赖它,因为即使在Windows上也不是常见的用法。

    所以正确的方法(和常见的用法)是使用环境变量。如果您没有其他外部配置值,此变量将包含数据库完整路径,或者它将包含属性文件的路径,而该属性文件又包含其他配置值。

    【讨论】:

      猜你喜欢
      • 2014-09-06
      • 1970-01-01
      • 2019-04-10
      • 2011-04-06
      • 1970-01-01
      • 1970-01-01
      • 2023-04-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多