Обновление конфигурации весенней загрузки приложения во время выполнения - PullRequest
2 голосов
/ 04 июля 2019

Я реализовал API завершения работы в своем проекте весенней загрузки, установив следующие значения в application.properties:

 management.endpoint.shutdown.enabled=true
 management.endpoint.info.enabled=true
 management.endpoints.web.exposure.include=*

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

1 Ответ

1 голос
/ 04 июля 2019

Вы можете использовать netflix archaius

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-archaius</artifactId>
</dependency>

Вам не нужно использовать @value аннотацию здесь.

Usage

DynamicStringProperty dynamicProperty = DynamicPropertyFactory.getInstance().getStringProperty("management.endpoint.shutdown.enabled", "default value");
String propertyCurrentValue = dynamicProperty.get();

Если данные изменяются в файле свойств в любой момент, Archaius обнаружит их во время выполнения и начнет извлекать новые значения.

Подробнее

archaius учебник 1 учебник 2

...