java - 如何从 Spring Boot 应用程序更改 consul K/V Store 中的值

标签 java spring-boot consul

我在 Spring Boot 2 应用程序中使用 Consul 的键/值存储作为 PropertySource。 (org.springframework.cloud:spring-cloud-starter-consul-config)

我可以使用 @ConfigurationProperties 从 K/V 存储中读取属性,甚至当我通过 Consul Web 界面更改值时使用 @RefreshScope 更新它们。

但我确实有一些可以在应用程序中更改的动态属性。 我如何将这些更改传播到 Consul,以便这些值真正发生更改。 我尝试使用该属性的 Setter,但这并没有改变 Consul 中的值。

最佳答案

使用此代码设置 KV 值。 创建私有(private)变量。

@Autowired
private ConsulClient consulClient;

使用 setKVValue() 方法更改 KV。

consulClient.setKVValue("key", "value")

关于java - 如何从 Spring Boot 应用程序更改 consul K/V Store 中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50655499/

相关文章:

java - 为 Consul、网关和微服务配置 HTTPS 会导致 ZuulException : Forwarding error

java - 当测试抛出异常时调用的方法

java - 在 Android 上计算文件中的 XML 元素

java - Spring Cache - 生成自定义缓存结果

java - @SpringBootApplication 在同一个包中?

java - 无法使用 REST API Controller 在服务器端检索 url 参数

nginx - 如何更改默认的 swagger.json 文件路径?

dns - 使用 consul 和 dnsmasq 进行反向 DNS 查询

java - 在jframe上添加webview引擎控制

spring-boot - 有没有办法知道Axon框架何时为 'ready'