一尘不染

Spring Boot远程配置?

spring-boot

我想知道是否有人有使用远程属性(例如,位于远程计算机上的数据库而不是application.properties文件中的属性)配置Spring
Boot的经验或建议。我知道Spring Boot的外部配置选项,但是所有这些都假定配置是通过.properties文件完成的。

理想情况下,我只需要对单个数据源的配置进行硬编码,然后@Beans可以使用远程获取的值来完成各种配置的所有后续配置。

这可能吗?


阅读 388

收藏
2020-05-30

共1个答案

一尘不染

Spring Cloud有一个引导程序ApplicationContext,您可以自定义该引导程序并使用它来向中添加属性Environment。该spring- cloud-config- client是相当轻巧,比春等没有强制性的依赖。文档在这里。引导程序配置示例:

@Configuration
public class CustomPropertySourceLocator implements PropertySourceLocator {

    @Override
    public PropertySource<?> locate(Environment environment) {
        return new MapPropertySource("databaseProperties",
                getPropertiesFromDatabase());
    }

}

具体实施getPropertiesFromDatabase()取决于您。

2020-05-30