SpringBoot之ApplicationRunner接口和@Order注解
Posted 小破孩楼主
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot之ApplicationRunner接口和@Order注解相关的知识,希望对你有一定的参考价值。
我们在开发中可能会有这样的情景。需要在容器启动的时候执行一些内容。比如读取配置文件,数据库连接之类的。SpringBoot给我们提供了ApplicationRunner接口来帮助我们实现这种需求。该接口执行时机为容器启动完成的时候。
ApplicationRunner接口
具体代码如下:
@Component @Order(1) public class TestImplApplicationRunner implements ApplicationRunner { @Override public void run(ApplicationArguments args) throws Exception { System.out.println("这个是测试ApplicationRunner接口1"); } }
@Order注解
如果有多个实现类,而你需要他们按一定顺序执行的话,可以在实现类上加上@Order注解。@Order(value=整数值)。SpringBoot会按照@Order中的value值从小到大依次执行。
@Component @Order(2) public class TestImplApplicationRunner2 implements ApplicationRunner { @Override public void run(ApplicationArguments args) throws Exception { System.out.println("这个是测试ApplicationRunner接口2"); } }
在加上@Order注解后,执行顺序会根据数字从小到大执行
以上是关于SpringBoot之ApplicationRunner接口和@Order注解的主要内容,如果未能解决你的问题,请参考以下文章