官方文档上解释,profiles是一种分离部分应用程序的配置方法;可以再开发过程中用profiles来控制开发、生产、测试等代码块的加载和使用。
使用spring.profiles.active=develop设置当前模式,然后在@Componment、@Configuration中使用@Profile("develop"),就可以启用和不启用当前组件加载!很像c#中的条件编译的用法!
#配置文件
spring.profiles.active=test,dev
@Component
@Profile("test") //加载
public class SpringRunner implements ApplicationRunner {
@Override
public void run(ApplicationArguments args) throws Exception {
System.out.println("启动完成了 SpringRunner" );
}
}
@Component
@Profile("product") //不加载
public class CommandRunnerEvent implements CommandLineRunner {
@Override
public void run(String... args) throws Exception {
System.out.println("启动完成了 CommandRunnerEvent");
}
}