2014-11-18 3 views
2

Ищете лучший подход при настройке нескольких файлов свойств профиля в приложении Springboot. Ниже приведен пример:Springboot - mutliple файлы свойств для профиля


-ресурсов     - application.properties
            - устр
                        - приложение-DEV .properties
                        - ldap-dev.properties
                        - quartz-dev.properties
                        - etc-dev.properties
        - тест
                        - application-test.properties
                        - ldap-test.properties
                        - quartz-test.properties
                        - и т.д.-TES t.properties
        - прод
                        - приложение-прод.Свойства
                        - ldap-prod.properties
                        - quartz-prod.properties
                        - etc-prod.properties

В application.properties и application-profile.properties файлы загружаются в порядке. Я ищу рекомендуемый подход при загрузке других файлов свойств конкретного профиля. Я не уверен, есть ли способ загрузить все файлы свойств из папки на основе профиля?

ответ

1

Я не уверен, есть ли лучший способ, что и мое предложение действительно работает, но вы можете попробовать это:

Добавить @PropertySource аннотации прямо перед вашим классом конфигурации

@PropertySource("classpath:ldap-${spring.profiles.active}.properties", "classpath:quartz-${spring.profiles.active}.properties", "classpath:etc-${spring.profiles.active}.properties") 

Чтобы лучше понять, как конфигурации пружинной нагрузки из разных источников и профилей см. this и this.

Надеюсь, это поможет.

3

У вас довольно много гибкости при использовании встроенного прослушивателя конфигурации. Например. Вы можете установить spring.config.name=application,ldap,quartz,etc и spring.config.location=classpath:/,classpath:/dev,classpath:/prod,classpath:/test. Или эквивалентные env vars. Ссылки в ответе Селима описывают основные параметры поведения и конфигурации.

Смежные вопросы