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注解后,執行順序會根據數字從小到大執行


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM