欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java程序初始化啟動自動執(zhí)行的三種方式

 更新時間:2024年01月30日 10:28:54   作者:是菜菜的小嚴惜哎  
這篇文章主要介紹了Java程序初始化啟動自動執(zhí)行的三種方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

Java程序初始化啟動自動執(zhí)行的三種方式

@PostConstruct注解

將此注解加在要執(zhí)行的方法上,則程序初始化啟動的時候,會執(zhí)行此方法,一般用來初始化必要的程序初始信息

注意:

加了postconstruct注解的方法,如果執(zhí)行失敗,整個程序會無法正常啟動!這個方法執(zhí)行不完,整個程序也啟動不了?。?!

詳情請看我的錯誤總結  開發(fā)錯誤總結---@PostConstruct注解導致的程序無法啟動(@PostConstruct的執(zhí)行)

開始試驗:

  • 啟動類
@SpringBootApplication
public class MyApplication {
    public static void main(String[] args) {
        SpringApplication.run(MyApplication.class,args);
    }
}
  • 測試類
@Service
@Slf4j
public class PostConstructTest {
 
    @PostConstruct
    public void testPostConstruct () {
      log.info("程序初始化執(zhí)行");
    }
 
}
  • 啟動看效果

CommandLineRunner接口

  • 實現(xiàn) CommandLineRunner接口
@Slf4j
@Component
public class InitCommandLineRunner implements CommandLineRunner {
    @Override
    public void run(String... args) throws Exception {
        log.info("實現(xiàn)CommandLineRunner接口的程序初始化");
    }
}
  • 啟動看效果

ApplicationRunner 接口

  • 實現(xiàn) ApplicationRunner 接口
@Component
@Slf4j
public class InitApplicationRunner implements ApplicationRunner {
    @Override
    public void run(ApplicationArguments args) throws Exception {
        log.info("實現(xiàn)ApplicationRunner接口程序初始化");
    }
}
  • 啟動看效果

@Order注解設置啟動順序

我們給前兩個實現(xiàn)ApplicationRunner 接口和CommandLineRunner 接口的啟動類設置啟動順序

  • 為了讓效果明顯一點,我們讓程序執(zhí)行完第一個之后睡眠一下
@Slf4j
@Component
@Order(value = 1)
public class InitCommandLineRunner implements CommandLineRunner {
    @Override
    public void run(String... args) throws Exception {
        log.info("實現(xiàn)CommandLineRunner接口的程序初始化");
        Thread.sleep(2000);
    }
}
@Component
@Slf4j
@Order(value = 2)
public class InitApplicationRunner implements ApplicationRunner {
    @Override
    public void run(ApplicationArguments args) throws Exception {
        log.info("實現(xiàn)ApplicationRunner接口程序初始化");
    }
}
  • 執(zhí)行一下來看效果

總結

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Java中的異常處理機制介紹(非常全面!)

    Java中的異常處理機制介紹(非常全面!)

    異常可能是在程序執(zhí)行過程中產生的,也可能是程序中throw主動拋出的,下面這篇文章主要給大家介紹了關于Java中異常處理機制的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-01-01
  • Java高級之虛擬機加載機制的實例講解

    Java高級之虛擬機加載機制的實例講解

    下面小編就為大家分享一篇Java高級之虛擬機加載機制的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • Java手寫線程池之向JDK線程池進發(fā)

    Java手寫線程池之向JDK線程池進發(fā)

    在前面的文章自己動手寫乞丐版線程池中,我們寫了一個非常簡單的線程池實現(xiàn),這個只是一個非常簡單的實現(xiàn),在本篇文章當中我們將要實現(xiàn)一個和JDK內部實現(xiàn)的線程池非常相似的線程池,需要的可以了解一下
    2022-10-10
  • Spring?Boot在開發(fā)過程中常用IDEA插件

    Spring?Boot在開發(fā)過程中常用IDEA插件

    這篇文章主要為大家介紹了Spring?Boot在開發(fā)過程中常用IDEA插件,幫助大家提高開發(fā)工作效率,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-03-03
  • java中InputStream轉為MultipartFile的解決方案

    java中InputStream轉為MultipartFile的解決方案

    這篇文章主要介紹了java中InputStream轉為MultipartFile的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • java實現(xiàn)短信通信的完整教程

    java實現(xiàn)短信通信的完整教程

    這篇文章主要為大家詳細介紹了java實現(xiàn)短信通信的完整教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • 詳解java爬蟲jsoup解析多空格class數(shù)據(jù)

    詳解java爬蟲jsoup解析多空格class數(shù)據(jù)

    在本篇內容中小編給大家分享了java爬蟲jsoup怎么解析多空格class數(shù)據(jù)的方法和技巧,需要的朋友們跟著學習下。
    2018-12-12
  • IDEA提示內存不足 low memory的完美解決方法(親測好用)

    IDEA提示內存不足 low memory的完美解決方法(親測好用)

    這篇文章主要介紹了IDEA提示內存不足 low memory的完美解決方法(親測好用),這里以IDEA2022版本為例,在IDE中 幫助(help)–>change memory setting(改變內存設置),具體設置辦法文中給大家詳細講解,需要的朋友可以參考下
    2023-01-01
  • spring data jpa 查詢自定義字段,轉換為自定義實體方式

    spring data jpa 查詢自定義字段,轉換為自定義實體方式

    這篇文章主要介紹了spring data jpa 查詢自定義字段,轉換為自定義實體方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • java10下編譯lombok注解代碼分享

    java10下編譯lombok注解代碼分享

    這篇文章給大家分享了java10下編譯lombok注解的代碼,有興趣的朋友可以測試以下,學習參考下吧。
    2018-04-04

最新評論