Springboot CommandLineRunner
SpringBoot提供的一种简单的实现方案就是实现CommandLineRunner接口,实现该类的run方法,业务逻辑卸载run方法里面即可。
/**
* 项目启动加载类。。。。。
**/
@Component
public class InitService implements CommandLineRunner {
private static final Logger logger = LoggerFactory.getLogger(InitService.class);
@Override
public void run(String... args) throws Exception {
logger.info("启动类111111");
}
}
- 如果有多个启动类,保持顺序执行在实体类上加上@Order 注解即可 ,执行顺序是根据@Order(value=1) 中的value大小顺序执行的
@Component
@Order(value=1)
public class InitService implements CommandLineRunner {
private static final Logger logger = LoggerFactory.getLogger(InitService.class);
@Override
public void run(String... args) throws Exception {
logger.info("启动类111111");
}
}
@Component
@Order(value=2)
public class InitService1 implements CommandLineRunner {
private static final Logger logger = LoggerFactory.getLogger(InitService1.class);
@Override
public void run(String... args) throws Exception {
logger.info("启动类22222");
}
}
上面boot 启动之后也就会顺序执行了