代码之家  ›  专栏  ›  技术社区  ›  pChip

刷新Spring Boot自动配置的属性

  •  3
  • pChip  · 技术社区  · 6 年前

    我可以动态刷新spring boot的自动配置设置所使用的属性吗?

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

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

    现在,如果我更改配置服务器上的密码属性,并点击 /refresh 端点,我可以看到已更新的道具已被检索,但是 DataSource 不刷新。

    我知道我可以手动配置 数据来源 把豆子放在 RefreshScope ,但我希望找到一种方法将自动配置的属性标记为“可刷新”。我有一些用例,我想刷新spring boot用于其他bean的道具 DataSources ,手动设置其中一些bean可能会很痛苦。

    1 回复  |  直到 6 年前
        1
  •  1
  •   pChip    6 年前

    我想我说得太快了,至少就我的 DataSource 好例子。正在使用更新的道具创建新的数据库连接。

    尤其是在看医生的时候 here

    这和我的 spring.cloud.stream.bindings 我有房产,但在那种情况下,我可以用 @RefreshScope .