как создать переменные среды для моей программы - PullRequest
0 голосов
/ 11 марта 2012

Я сделал программу на Java, которая использует две внешние базы данных.Пути к этим базам данных жестко запрограммированы в моем программном коде.

Чтобы сделать эту программу пригодной для использования другими пользователями на других компьютерах (которые также должны установить эти две базы данных на своих компьютерах), я думаю, чтопуть для этих двух баз данных должен быть добавлен как переменные среды?Как это можно сделать?

Я не профессионал, когда дело доходит до переменных среды, поэтому не могли бы вы посоветовать, что нужно сделать в этом случае?

Заранее спасибо

Ответы [ 4 ]

1 голос
/ 11 марта 2012
1 голос
/ 11 марта 2012

Чтобы получить значение переменной среды в Java, вы пишете что-то вроде этого:

String pathToDatabase = System.getenv().get("PATH_TO_DATABASE");

(где PATH_TO_DATABASE - имя переменной среды). При этом используется System.getenv() для получения карты всех переменных среды.

Чтобы установить значение переменной среды в Linux, ваши пользователи могут написать что-то вроде этого:

export PATH_TO_DATABASE=/this/is/the/path/to/the/database

перед запуском программы.

0 голосов
/ 11 марта 2012

Вместо переменных среды файл свойств будет полезен и более переносим. Например, в вашем файле свойств у вас может быть следующее:

db.url = jdbc://foo/bar?whatever
db.user = username
db.password = password

Тогда ваш код может прочитать это, используя следующее:

Properties properties = new Properties();
try {
  properties.load(new FileInputStream("path/filename"));
} catch (IOException e) {
  System.err.println( "Eeeek!" );
}

System.out.println( properties.getProperty( "db.url" ) );

Удобно, объекты свойств позволяют вам задавать значения по умолчанию, так что вы можете по-прежнему иметь жестко закодированные значения, если хотите, а затем переопределить их внешним файлом.

0 голосов
/ 11 марта 2012

Переменные среды, как правило, не лучший способ обработки конфигурации приложения, но, если вам необходимо, необходимы конкретные документы ОС, чтобы научиться их настраивать и использовать Java:

Карта map = System.getenv ();

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