我想介绍一些仅在开发期间执行的方法。
我想在这里使用Spring @Profile
注解?但是如何将此注解应用于类级别,以便只有在属性中配置了特定配置文件时才会调用此方法?
spring.profiles.active=dev
以下内容为伪代码,请问如何实现?
class MyService {
void run() {
log();
}
@Profile("dev")
void log() {
//only during dev
}
}
Arrays.asList(env.getActiveProfiles()).contains("dev")
可以用env.acceptsProfiles("dev")
来替代。 - Marko Vranjkovicenv.acceptsProfiles("dev")
更加隐晦,而另一种方式更加明确:env.getActiveProfiles
获取列表,.contains("dev")
检查感兴趣的配置文件是否包含在活动配置文件列表中。这只是一种风格上的偏好,没有其他意思。 :-) - funder7