繁体   English   中英

Spring Cloud Config:从bootstrap.properties/yml调用bean

[英]Spring Cloud Config: Call a bean from bootstrap.properties/yml

是否可以从bootstrap.properties调用bean?

我正在尝试实施Cloud Config Client。

Bean类似于:

@Bean
public MyObject myObject(String environment) {
   return new MyObject(environment);
}

 ....

public class MyObject {
  private String environment;

 // getters setters 
}

在bootstrap.properties文件中,我有以下内容:

spring.profiles.active= #Here I should get the value from the bean 

是否可以编写类似以下内容的内容:

spring.profiles.active= ${myObject.environment}

非常感谢你。

您可以插入spring.factories

org.springframework.cloud.bootstrap.BootstrapConfiguration=\
com.demo.MyBootstrapConfiguration

然后写一个普通的Spring Java Configuration Object

@Configuration
public class MyBootstrapConfiguration {
  // normal spring java config
}

基于文档,引导文件:

开箱即用,它负责从外部源加载配置属性,还负责解密本地外部配置文件中的属性。

并且其内容应在Bean中引用,而不是相反。

如果您想以某种方式将活动配置文件传递给它,则可以基于文档:

1)在启动应用程序时使用-D选项:

java -jar -Dspring.profiles.active=production demo-0.0.1-SNAPSHOT.jar

2)在您的OS环境上设置SPRING_PROFILES_ACTIVE属性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM