настроить каталог базы данных - PullRequest
0 голосов
/ 08 ноября 2011

Я работаю над программой Java Desktop, которая после ее установки будет определять каталог базы данных по умолчанию и рабочий каталог.Где мне сохранить такую ​​информацию, чтобы в следующий раз, когда пользователь открыл программу, программа знала, где искать базу данных и рабочий каталог?

Что приходит на ум:

  1. хранить все в реестре (ну, сделал это в версии MATLAB и, если есть другой путь, точно не пойдет туда).
  2. настроить другую базу данных, прикрепленную в файле jar, для хранения всего
  3. Это так называемая проблема постоянства?Что такое постоянство Java или объект данных Java?У них есть способ заставить это работать?
  4. есть другие предложения?

Ответы [ 3 ]

4 голосов
/ 08 ноября 2011

Взгляните на API предпочтений Java .Это стандартный механизм Java SE для хранения настроек, который делает это в зависимости от платформы, но не зависит от приложения.Использует реестр в Windows, файлы настроек в OS X и, я думаю, ~ / .files в Unix.

2 голосов
/ 08 ноября 2011

Класс Предпочтения был создан для хранения таких вещей, как ... предпочтения, в зависимости от операционной системы.

Вы также можете просто указать местоположение каталога вручную через скрипт запуска,или создайте каталог по умолчанию в доме пользователя и сохраните в нем как файлы конфигурации, так и файлы БД.

1 голос
/ 08 ноября 2011

Конечно, ваша постоянная память - это ваш жесткий диск, поэтому вам нужно хранить данные там, если вы хотите, чтобы они сохранялись от исполнения к выполнению. На самом деле, все идет. Вы можете хранить конфигурацию в XML-файле, что делает ее читаемой пользователем вне приложения, что очень удобно для отладки, а Java поставляется с библиотеками для анализа и генерации XML. Это будет независимым от ОС, в отличие от решения реестра, которое специфично для Windows. И вы можете использовать подход XML для обмена информацией между приложениями, если это имеет значение. Что-то, чтобы рассмотреть.

Обновление: Предпочтения это круто! Никогда этого не видел.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...