Главная » Spring » Импортирование внешних настроек Spring

0

Часто полную конфигурацию приложения легко можно уместить в один файл. Но иногда может оказаться удобнее извлечь некоторые фрагменты конфигурации и поместить в отдельный файл с опреде- лением свойств. Например, во многих приложениях в конфигура- ционном файле определяется источник данных. В Spring настройка источника данных в конфигурационном файле могла бы иметь та- кой вид:

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" p:driverClassName="org.hsqldb.jdbcDriver" p:url="jdbc:hsqldb:hsql://localhost/spitter/spitter" p:username="spitterAdmin"

p:password="t0ps3cr3t" />

Как видите, вся информация, необходимая для подключения к ба- зе данных, находится в объявлении компонента. Такое определение имеет две малоприятные особенности:

# если потребуется изменить URL базы данных, имя пользова-

теля или пароль, придется редактировать файл конфигурации; затем пересобирать и повторно развертывать приложение;

# имя пользователя и пароль – это секретная информация, ко-

торая не должна попасть в чужие руки.

В ситуациях, подобных этой, было бы лучше не включать эти све- дения непосредственно в конфигурационный файл Spring. Фрейм- ворк Spring предусматривает два механизма импортирования на- строек из файлов с определениями свойств, располагающихся за пределами развернутого приложения:

# механизм подстановки переменных-заполнителей в определе-

ниях значений свойств, выполняющий подстановку значений из внешнего файла;

# механизм  переопределения  свойств, замещающий значения

свойств компонентов значениями из внешнего файла.

Кроме того, существует открытый проект Jasypt1, предлагающий альтернативные реализации механизмов, перечисленных выше, ко-

1   http://www.jasypt.org.

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

Мы рассмотрим все эти механизмы по очереди и начнем с самого простого – механизма подстановки переменных-заполнителей.

Источник:   Уоллс К., Spring в действии. – М.: ДМК Пресс, 2013. – 752 с.: ил.

По теме:

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