Spring Boot远程配置?

时间:2015-01-23 21:18:43

标签: spring spring-boot

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

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

这可能吗?

1 个答案:

答案 0 :(得分:2)

Spring Cloud有一个引导程序ApplicationContext,您可以自定义并使用该引导程序向Environment添加属性。 spring-cloud-config-client非常轻量级,除Spring之外没有强制依赖。文档为here。示例引导程序配置:

@Configuration
public class CustomPropertySourceLocator implements PropertySourceLocator {

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

}

getPropertiesFromDatabase()的实施取决于您。