У меня есть несколько файлов свойств, помещенных в папку ресурсов.
src/main/java
src/main/resources-
prod
-> application.properties
prod-brand-1
-> application.properties
prod-brand-2
-> application.properties
application-default.properties (directly placed under resources folder)
В одном из моих классов Java я инициализирую компонент среды, который будет загружать файлы свойств с помощью аннотации @PropertySource.
@Configuration
@PropertySource({"classpath:application-default.properties",
"classpath:prod/application.properties",
"classpath:prod-brand-1/application.properties",
"classpath:prod-brand-2/application.properties"
})
public class PropertyConfig{
//
}
Я могу загрузить application-default.properties , поскольку он находится непосредственно в папке ресурсов, но не в тех, которые находятся в некоторых каталогах, таких как prod, prod- 1, prod-2 .
В реальном сценарии нижеследующее должно быть заменено некоторым заполнителем, а значения (prod, prod-brand-1, prod-brand-2) которых должны быть вводится через переменные окружения.
@PropertySource({"classpath:prod/application.properties" "classpath:prod-brand-1/application.properties" "classpath:prod-brand-2/application.properties"})
Должно быть что-то вроде этого: -
@PropertySource({"classpath:{dir}/application.properties"})
Пожалуйста, предложите, как я могу использовать заполнитель с @ PropertySource.