设置数据库目录

时间:2011-11-08 17:41:05

标签: java persistence

我正在开发一个Java Desktop程序,在安装它时会指定一个默认的数据库目录和工作目录。我应该在哪里保存这些信息,以便下次用户打开程序时,程序知道在哪里查找数据库和工作目录?

想到的事情:

  1. 将所有内容存储在注册表中(好吧,在MATLAB版本中执行此操作,如果有其他方法,肯定不会去那里)。
  2. 设置附加在jar文件中的另一个数据库来存储所有内容
  3. 这是一个所谓的持久性问题吗?什么是Java持久性或Java数据对象?他们有办法让它运作吗?
  4. 还有其他建议吗?

3 个答案:

答案 0 :(得分:4)

看看Java Preferences API。它是一种标准的Java SE机制,用于存储以特定于平台但以应用程序中立方式执行此操作的首选项。使用Windows上的Registry,OS X上的Preferences文件,我相信Unix上的〜/ .files。

答案 1 :(得分:2)

创建Preferences类是为了以操作系统中立的方式存储诸如...首选项之类的东西。

您也可以手动指定目录位置,通过启动器脚本,或在用户家中创建默认目录,并将配置文件和数据库文件保存在那里。

答案 2 :(得分:1)

当然,您的持久性内存是您的硬盘驱动器,因此如果您希望将数据从执行持续到执行,则需要将数据存储在那里。真的,任何事情都有。您可以将配置存储在XML文件中 - 使其在应用程序外部是用户可读的,这非常适合调试,而Java附带了用于XML解析和生成的库。它与操作系统无关,与注册表解决方案不同,后者是Windows特定的。如果重要的话,您可以使用XML方法在应用程序之间共享信息。需要考虑的事情。

更新:Preferences很酷!从来没有见过那个。