Как обновить конфигурацию приложения SpringBoot во время выполнения без перезагрузки всего ApplicationContext

Я пытаюсь понять, как я могу динамически обновлять / перезагружать внешнюю конфигурацию в приложении Spring Boot без перезапуска всего приложения.

Большая часть рекомендаций включает в себя перезагрузку ApplicationContext после изменения внешней конфигурации, но это эквивалентно перезапуску всего приложения, так что на самом деле это не так уж и полезно.

Читая справочную документацию SpringBoot, я нашел главу23.7 Свойства конфигурации Typesafe.

Если я правильно понимаю, это позволяет определить простые классы POJO, которые будут содержать значения конфигурации вашего приложения (внешние) в качестве атрибутов.

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

Однако мне еще не удалось выяснить, как включить этот тип поведения. Есть ли какой-то явно очевидный способ динамического обновления компонентов, помеченных@ConfigurationProperties когда соответствующая конфигурация изменилась?

Ответы на вопрос(1)

Ваш ответ на вопрос