Итак, у меня есть файл application.yml
для моего загрузочного приложения spring, например:
spring:
url: localhost
email:
from: [email protected]
app:
uuid: 3848348j34jk2dne9
Я хочу связать эти свойства конфигурации с различными компонентами в моем приложении, например:
@Component
public class FooA {
private final String url;
public FooA(@Value("${spring.url}") String url) {
this.url = url
}
}
@Component
public class FooB {
private final String from;
public FooA(@Value("${email.from}") String from) {
this.from = from
}
}
@Component
public class FooC {
private final String uuid;
public FooA(@Value("${app.uuid}") String uuid) {
this.uuid = uuid
}
}
Вышеупомянутое работает в моем приложении. Но мой вопрос заключается в том, что это лучший способ загрузки spring. Единственная альтернатива этому, что я знаю, это использовать объект Properties
, создав bean внутри класса конфигурации, загрузив свойства со всеми переменными конфигурации и запустив свойство bean в компоненты.
Какова наилучшая практика в этом случае?