Как работать с properties файлами?

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

На примере этой статьи Как отправить Email в Java? качаем исходники.

Шаг 0

Properties — это свойства которые требуются проектом для выполнения каких-то действий.

В наше случае это данные для аутентификации в Google GMail.

Где обычно хранятся propertie?

Хранятся они в файлах с расширением *.properties

Шаг 1

Теперь откроем скачанный проект с урока Как отправить Email в Java? и вынесем все необходимые свойства в properties файлы.

В текущем проекте мы создаем properties так:

private Properties props;

public Sender(String username, String password) {
    this.username = username;
    this.password = password;

    props = new Properties();
    props.put("mail.smtp.host", "smtp.gmail.com");
    props.put("mail.smtp.socketFactory.port", "465");
    props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
    props.put("mail.smtp.auth", "true");
    props.put("mail.smtp.port", "465");
}

Для того чтобы вынести их в отдельный файл используется properties файл.

Шаг 2

Создаем корне проекта config.properties со следующим содержимым:

mail.smtp.host=smtp.gmail.com
mail.smtp.socketFactory.port=465
mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory
mail.smtp.auth=true
mail.smtp.port=465

Шаг 3

Теперь давайте подгрузим наши properties данные.

props = new Properties();
props.load(new FileInputStream("config.properties"));

Готово!

Урок создан: 09 июня 2013 | Просмотров: 4745 | Автор: Александр Барчук | Правила перепечатки


Добавить комментарий

Добавить комментарий

Ваш e-mail не будет опубликован.

Комментарии:

  • 02 июля 2013 в 11:22

    Ang

    Было бы интересно показать пример, как брать файл properties относительно, не корня проекта, а относительно класса, который использует этот properties.