Spring boot Загрузка конфигурации для среды с использованием PropertySource - PullRequest
0 голосов
/ 25 февраля 2020

Я пытаюсь добавить авторизацию для нескольких микросервисов. Поскольку все службы имеют одинаковый процесс авторизации, я хочу извлечь logi c в общую библиотеку.

Мне удалось создать библиотеку, но я понимаю, что все конфигурации должны быть установлены в application.yml файл в микросервисе, который вызывает библиотеку. Я не хочу показывать некоторые конфигурации на уровне сервиса.

После некоторых поисков я обнаружил, что могу установить @PropertySource("library.properties") в классе конфигурации моей библиотеки, чтобы принудительно считывать свойства из указанного файла .properties в библиотеке.

Проблема теперь в том, что я хочу установить разные значения для разных сред, например, URL авторизации для тестирования и производства будет отличаться. Как настроить файл так, чтобы класс конфигурации считывал одно и то же значение свойства в зависимости от активного профиля (например, environment = test / staging / production)?

1 Ответ

0 голосов
/ 25 февраля 2020

Вы можете иметь несколько файлов свойств, таких как «application-environment.yml», в папке ресурсов. Spring Framework выбирает правильный файл на основе активного профиля. Например, если вы определяете «промежуточную» среду и имеете промежуточную работу профиль, а затем ваш файл свойств должен быть назван как application-staging.yml.

...