其他分享
首页 > 其他分享> > 刷新Spring Boot自动配置的属性

刷新Spring Boot自动配置的属性

作者:互联网

我可以动态刷新Spring Boot自动配置设置使用的属性吗?

例如,我有以下属性设置(通过云配置)来自动配置dataSource:

spring.datasource.username=user1
spring.datasource.password=test

现在,如果我更改配置服务器上的密码prop,并点击/ refresh端点,我可以看到检索到更新的prop,但不刷新DataSource.

我知道我可以手动配置DataSource bean并确保它们属于RefreshScope,但我希望找到一种方法将自动配置的属性标记为“可刷新”.我有一些用例我想要刷新Spring Boot使用的除了DataSources之外的其他bean的道具,并且手动设置其中一些bean可能会很痛苦.

解决方法:

我想我说得太早了,至少就我的DataSource示例而言.正在使用更新的道具创建新的数据库连接.

特别是在查看文档here时,这是有道理的

这并没有重新连接我的一些spring.cloud.stream.bindings属性,但在这种情况下,我可以解决@RefreshScope的问题.

标签:spring-cloud-config,spring,spring-boot,spring-config
来源: https://codeday.me/bug/20190910/1798745.html