1
我想知道是否有一個示例如何爲Spring Cloud Config創建自定義EnvironmentRepository,因爲有git,svn,vault存儲庫,但我不想使用它們,我需要我的自定義一。例如,如果我只想將所有屬性存儲在Map中。Spring Cloud Config定製環境存儲庫
我想知道是否有一個示例如何爲Spring Cloud Config創建自定義EnvironmentRepository,因爲有git,svn,vault存儲庫,但我不想使用它們,我需要我的自定義一。例如,如果我只想將所有屬性存儲在Map中。Spring Cloud Config定製環境存儲庫
在您的應用程序上下文中提供EnvironmentRepository作爲bean的實現。 Spring雲配置服務器會自動提取它。 這裏有一個簡約的例子:
public class CustomEnvironmentRepository implements
EnvironmentRepository
{
@Override
public Environment findOne(String application, String profile, String label)
{
Environment environment = new Environment(application, profile);
final Map<String, String> properties = loadYouProperties();
environment.add(new PropertySource("mapPropertySource", properties));
return environment;
}
}
注意如果您有多個EnvironmentRepository(GIT,跳馬,原生......),你想也想實現Ordered接口指定定單。
一個好方法是查找現有的EnvironmentRepository實現,如Spring雲配置服務器包中的VaultEnvironmentRepository。
我還創建了一個帶有ZooKeeper EnvironmentRepository的小型Maven庫,用作Spring Cloud Config Server的即插即用依賴項。見github.com/felixoldenburg/JonesEnvironmentRepository –
我想在這裏類似的東西 - 但不工作。請參閱https://stackoverflow.com/questions/48762915/custom-spring-config-environmentrepository-not-being-picked-up –