Spring 引导应用程序中的条件自动装配
Conditional auto-wiring in Spring boot application
我有一个 spring 引导应用程序,我想为其创建单独的外部和嵌入式配置文件 tomcat。我如何检查我的方法,哪个配置文件处于活动状态,以便我可以 运行 基于特定配置文件的代码。
我想出了一些代码,如下所示。
if("${spring.active.profile}".contains("external_tomcat_profile")) {
//do something;
}else{
//another thing;
}
以上代码无效。我怎样才能实现这个功能?或者有更好的方法吗?
我正在使用两个配置文件,一个是用于测试的“测试”,另一个是嵌入式或外部 tomcat,所以使用这个条件是否正确
if("${spring.active.profile}".contains("external_tomcat_profile"))
您可以为此使用 Environment
bean
@Autowired
Environment env;
public void aMethod() {
String[] activeProfiles = env.getActiveProfiles();
}
我有一个 spring 引导应用程序,我想为其创建单独的外部和嵌入式配置文件 tomcat。我如何检查我的方法,哪个配置文件处于活动状态,以便我可以 运行 基于特定配置文件的代码。 我想出了一些代码,如下所示。
if("${spring.active.profile}".contains("external_tomcat_profile")) {
//do something;
}else{
//another thing;
}
以上代码无效。我怎样才能实现这个功能?或者有更好的方法吗? 我正在使用两个配置文件,一个是用于测试的“测试”,另一个是嵌入式或外部 tomcat,所以使用这个条件是否正确
if("${spring.active.profile}".contains("external_tomcat_profile"))
您可以为此使用 Environment
bean
@Autowired
Environment env;
public void aMethod() {
String[] activeProfiles = env.getActiveProfiles();
}