CommandLineRunner 和 ApplicationRunner 的区别
生活随笔
收集整理的這篇文章主要介紹了
CommandLineRunner 和 ApplicationRunner 的区别
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
CommandLineRunner 和 ApplicationRunner 概述
CommandLineRunner 和 ApplicationRunner 的作用類似, 都可以在 Spring 容器初始化之后執(zhí)行某些操作。比較適用于某些復(fù)雜的 Bean 加載完成之后執(zhí)行一些操作。例如 Feign 調(diào)用。
相同點(diǎn)
- 都可以獲取到啟動(dòng)時(shí)指定的外部參數(shù)。
- 主邏輯方法名稱都是 run 。
- 在 run 方法內(nèi)部拋出異常時(shí), 應(yīng)用都將無法正常啟動(dòng)。
不同點(diǎn)
- run 方法的參數(shù)不一致, 一個(gè)是 String[] 數(shù)組, 一個(gè)是 ApplicationArguments 。
執(zhí)行順序
- 在沒有指定加載順序 @Order 時(shí)或 @Order 值一致時(shí), 先執(zhí)行 ApplicationRunner。
- 如果指定了加載順序 @Order, 則按照 @Order 的順序進(jìn)行執(zhí)行。
總結(jié)
以上是生活随笔為你收集整理的CommandLineRunner 和 ApplicationRunner 的区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dw中HTML修改背景图片,dreamw
- 下一篇: 量化交易实战——互联网金融之四