Spring?boot?CommandLineRunner啟動(dòng)任務(wù)傳參實(shí)例詳解
前言
在《Spring boot 通過(guò)CommandLineRunner 在啟動(dòng)完成后執(zhí)行任務(wù)》這篇文章中我們介紹了創(chuàng)建CommandLineRunner任務(wù),在Spring boot啟動(dòng)后執(zhí)行一些任務(wù)。
有人可能有以為,這run(String... args)方法中的args參數(shù)是什么?
@Component @Order(value = 1) // 指定其執(zhí)行順序,值越小優(yōu)先級(jí)越高 public class MyRunner1 implements CommandLineRunner { @Override public void run(String... args) throws Exception { System.out.println("MyRunner1"); } }
String... args是應(yīng)用啟動(dòng)的時(shí)候可以傳進(jìn)來(lái)的參數(shù),有兩種方式可以傳參
一種是命令行的方式傳參,所以為什么這個(gè)接口叫CommandLineRunner
另一種方法是通過(guò)IntelliJ IDEA配置參數(shù)
下面分別說(shuō)明
命令行傳參
首先將應(yīng)用打成jar包,然后運(yùn)行如下命令行,我這里傳入三個(gè)參數(shù)
java -jar MyProject.jar 野猿新一 野猿新二 野猿新三
IntelliJ IDEA傳參
如果是在開(kāi)發(fā)過(guò)程中想通過(guò)IntelliJ IDEA直接運(yùn)行項(xiàng)目,不想打成jar包,又要傳入?yún)?shù),可以配置項(xiàng)目運(yùn)行的環(huán)境
1.點(diǎn)擊Edit Configurations...打開(kāi)項(xiàng)目運(yùn)行配置對(duì)話框
2展開(kāi)Environment,在Program arguments項(xiàng)中填入項(xiàng)目運(yùn)行的參數(shù),點(diǎn)擊OK按鈕確定
測(cè)試
我們將上面的實(shí)例稍微修改下,把參數(shù)args打印出來(lái)
@Component @Order(value = 1) // 指定其執(zhí)行順序,值越小優(yōu)先級(jí)越高 public class MyRunner1 implements CommandLineRunner { @Override public void run(String... args) throws Exception { System.out.println("MyRunner1:" + Arrays.toString(args)); } }
采用以上命令行的方式或者IntelliJ IDEA配置參數(shù)的方式運(yùn)行結(jié)果一樣,如下
2020-08-21 16:36:04.453 custom-logback INFO 16244 --- [ main] com.yeyuanxinyi.MyApplication : Started MyApplication in 10.724 seconds (JVM running for 13.727)
MyRunner1:[野猿新一, 野猿新二, 野猿新三]
實(shí)際使用的時(shí)候可以取到傳入的參數(shù)然后做一些操作
總結(jié)
到此這篇關(guān)于Spring boot CommandLineRunner啟動(dòng)任務(wù)傳參的文章就介紹到這了,更多相關(guān)Springboot CommandLineRunner啟動(dòng)任務(wù)傳參內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Maven依賴(lài)沖突的幾種有效解決方法總結(jié)
在項(xiàng)目開(kāi)發(fā)中使用Maven管理Jar包時(shí),常常會(huì)遇到Jar包依賴(lài)沖突,所以本文就給大家總結(jié)了幾種解決Maven依賴(lài)沖突的有效方法,需要的朋友可以參考下2023-07-07ReentrantReadWriteLock?讀寫(xiě)鎖分析總結(jié)
這篇文章主要介紹了ReentrantReadWriteLock 讀寫(xiě)鎖分析總結(jié),ReentranReadWriteLock中有兩把鎖,一把讀鎖,一把寫(xiě)鎖,關(guān)于這兩把鎖的介紹,需要的小伙伴可以參考一下2022-05-05Java語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單FTP軟件 FTP軟件主界面(4)
這篇文章主要為大家詳細(xì)介紹了Java語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單FTP軟件,F(xiàn)TP軟件主界面編寫(xiě)的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03解決grails服務(wù)端口沖突的辦法(grails修改端口號(hào))
grails中默認(rèn)的服務(wù)端口為8080,當(dāng)本機(jī)中需要同時(shí)啟動(dòng)兩個(gè)不同的項(xiàng)目時(shí),就會(huì)造成端口沖突,下面給出解決方法2013-12-12Springboot 整合通用mapper和pagehelper展示分頁(yè)數(shù)據(jù)的問(wèn)題(附github源碼)
這篇文章主要介紹了Springboot 整合通用mapper和pagehelper展示分頁(yè)數(shù)據(jù)(附github源碼),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-09-09spring?cloud中Feign導(dǎo)入jar失敗的問(wèn)題及解決方案
這篇文章主要介紹了spring?cloud中Feign導(dǎo)入jar失敗的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03Spring5.2.x 源碼本地環(huán)境搭建的方法步驟
這篇文章主要介紹了Spring5.2.x 源碼本地環(huán)境搭建的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09java 教你如何給你的頭像添加一個(gè)好看的國(guó)旗
這篇文章主要介紹了java 教你如何給你的頭像添加一個(gè)好看的國(guó)旗,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09