我对Spring Boot还很陌生,所以如果我忽略了一些简单的东西,请原谅。
使用Spring Config Server,您可以通过.yml文件指定要使用的环境存储库类型(本地、Git等)。这些环境存储库包含在第三方依赖项中。我想知道是否可以添加您自己的环境存储库,以便例如连接到数据库以获取配置?
非常感谢!
正如spencergib在另一个线程中所说,PropertySource只为配置服务器本身提供配置,并且对于spring-boot-config客户端来说是不可访问的。
您实际需要的是EnvironmentRepository接口的实现。我在Spring Boot Config自定义环境存储库中提供了一个简单的CustomEnvironmentRepository示例
当然可以。请参阅spring-cloud-conconsul-config作为示例。内脏是PropertySource
public class MyPropertySource extends EnumerablePropertySource<MyClient> {
@Override
public Object getProperty(String name) {
return /* your impl */;
}
@Override
public String[] getPropertyNames() {
return /* your impl here */;
}
}
您还需要一个PropertySourceLocator
、一个引导配置和一个指向引导配置的META-INF/spring.factories
。