在Spring Config Server中添加环境存储库
我是Spring Boot的新手,所以如果我忽视了一些简单的事情,请原谅。
使用Spring Config Server,您可以通过.yml文件指定您想要使用的环境存储库类型(native,Git等)。 这些环境存储库包含在第三方依赖项中。 我想知道是否可以添加自己的环境存储库,以便您可以连接到数据库以获取配置?
提前谢谢了!
你当然可以。 以spring cloud consul config为例。 胆量是一个PropertySource
public class MyPropertySource extends EnumerablePropertySource { @Override public Object getProperty(String name) { return /* your impl */; } @Override public String[] getPropertyNames() { return /* your impl here */; } }
您还需要一个PropertySourceLocator
,一个bootstrap配置和一个指向bootstrap META-INF/spring.factories
的META-INF/spring.factories
。
正如spencergibb在另一个线程中所述 ,PropertySource仅为配置服务器本身提供配置,并且弹簧对接配置客户端无法访问。
您实际需要的是EnvironmentRepository接口的实现。 我在Spring Butt Config自定义环境存储库中提供了一个简单的CustomEnvironmentRepository示例