springboot CommandLineRunner接口实现自动任务加载功能

网友投稿 334 2022-12-06


springboot CommandLineRunner接口实现自动任务加载功能

CommandLineRunner接口可以实现任务的自动加载,当项目启动完后,就会自动去执行CommandLineRunner接口里的run方法,你可以实现多个CommandLineRunner的实例,使用order来控制执行的顺序!

/**

* 项目启动后自动运行的代码CommandLineRunner

*/

@Component

@Order(1)

public class MyStartupRunner1 implements CommandLineRunner {

private Logger logger = LoggerFactory.getLogger(MyStartupRunner1.class);

@Override

public void run(String... args) throws Exception {

logger.info("MyStartupRunner1里的数据");

}

}

@Component

@Order(2)

public class MyStartupRunner2 implements CommandLineRunner {

private Logger logger = LoggerFactory.getLogger(MyStartupRunner1.class);

@Override

public void run(String... args) throws Exception {

logger.info("MyStartupRunner2里的数据");

}

}

程序在启动之后,可以看到控制台的日志,它们被执行了。

2020-05-26 10:25:07.400  INFO 27788 --- [           main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getUsingGET_1

2020-05-26 10:25:07.433  INFO 27788 --- [           main] o.s.b.w.embedded.tomcKtAzDLJFpat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''

2020-05-26 10:25:07.435  INFO 27788 --- [           main] com.lind.basic.BasicApplication          : Started BasicApplication in 6.967 seconds (JVM running for 8.118)

2020-05-26 10:25:07.437  INFO 27788 --- [  &nbhttp://sp;        main] com.lind.basic.init.MyStartupRunner1 &nKtAzDLJFpbsp;   : MyStartupRunner1里的数据

2020-05-26 10:25:07.437  INFO 27788 --- [           main] com.lind.basic.init.MyStartupRunner1     : MyStartupRunner2里的数据

总结


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:详解关于SpringBoot的外部化配置使用记录
下一篇:Java实现简单LRU缓存机制的方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~