Как обеспечить загрузочные свойства Spring через bean-компонент свойства, инициализируемый при запуске приложения - PullRequest
0 голосов
/ 22 февраля 2019

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

пример:

@Configuration
public class A {

String url;
String password;
String username:
.
.
.
othere datasource related fields 
.
.
.


getters...
setters...

}

Теперь этот компонент будет создан при запуске и получит значения из внешнего источника.Как автоматическая конфигурация bean-компонента источника данных (сервера sql) может принимать значения из этого класса, и как инициализация этого bean-компонента должна быть принудительно выполнена перед инициализацией источника данных.

1 Ответ

0 голосов
/ 22 февраля 2019

Вы можете использовать аннотированный класс @ConfigurationProperties для этого.Его можно использовать для чтения конфигураций из .properties или из .yml файлов.

Пример использования:

@Configuration
@PropertySource("classpath:configprops.properties")
@ConfigurationProperties(prefix = "myprop")
public class ConfigProperties {

    private String property1;
    private String property2

    // getters and setters
}

В файле .properties мы храним поля, подобные этому:

#My properties
myprop.property1=property
myprop.property2=another property

Теперь, согласно документации Spring, достаточно аннотировать класс с помощью @ConfigurationProperties, чтобы преобразовать его в bean-компонент и сделать возможным его автоматическое связывание.Обычно люди обычно применяют аннотацию @Configuration.

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