(相關(guān)資料圖)
引言
在使用Spring Cloud Task進(jìn)行任務(wù)開(kāi)發(fā)時(shí),任務(wù)的輸入和輸出是非常重要的。
任務(wù)輸入
任務(wù)輸入指的是任務(wù)所需要的輸入數(shù)據(jù)。Spring Cloud Task支持多種方式來(lái)定義任務(wù)輸入數(shù)據(jù),例如命令行參數(shù)、環(huán)境變量、文件、數(shù)據(jù)庫(kù)等。下面我們將分別介紹這些方式的使用方法。
命令行參數(shù)
在命令行中傳遞參數(shù)是一種常見(jiàn)的方式。Spring Cloud Task也支持通過(guò)命令行傳遞任務(wù)輸入?yún)?shù)。例如,我們定義了一個(gè)任務(wù),需要傳遞一個(gè)字符串類型的參數(shù)??梢允褂萌缦路绞皆诿钚兄袀鬟f參數(shù):
$ java -jar my-task.jar --my.param=hello
在Spring Cloud Task應(yīng)用中,可以通過(guò)如下方式獲取傳遞的參數(shù):
@Componentpublic class MyTask implements CommandLineRunner { @Value("${my.param}") private String myParam; @Override public void run(String... args) throws Exception { // ... }}
環(huán)境變量
在Linux和Unix系統(tǒng)中,環(huán)境變量是一種常用的參數(shù)傳遞方式。Spring Cloud Task也支持通過(guò)環(huán)境變量傳遞任務(wù)輸入?yún)?shù)。例如,我們定義了一個(gè)任務(wù),需要傳遞一個(gè)字符串類型的參數(shù)。可以使用如下方式設(shè)置環(huán)境變量:
$ export MY_PARAM=hello$ java -jar my-task.jar
在Spring Cloud Task應(yīng)用中,可以通過(guò)如下方式獲取傳遞的參數(shù):
@Componentpublic class MyTask implements CommandLineRunner { @Value("${MY_PARAM}") private String myParam; @Override public void run(String... args) throws Exception { // ... }}
文件
有些任務(wù)需要處理文件類型的輸入數(shù)據(jù)。Spring Cloud Task也支持通過(guò)文件傳遞任務(wù)輸入?yún)?shù)。例如,我們定義了一個(gè)任務(wù),需要處理一個(gè)XML文件??梢允褂萌缦路绞皆诿钚兄袀鬟f文件名:
$ java -jar my-task.jar --my.file=/path/to/file.xml
在Spring Cloud Task應(yīng)用中,可以通過(guò)如下方式獲取傳遞的文件名:
@Componentpublic class MyTask implements CommandLineRunner { @Value("${my.file}") private String myFile; @Override public void run(String... args) throws Exception { File file = new File(myFile); // ... }}
數(shù)據(jù)庫(kù)
有些任務(wù)需要處理數(shù)據(jù)庫(kù)中的數(shù)據(jù)。Spring Cloud Task也支持通過(guò)數(shù)據(jù)庫(kù)傳遞任務(wù)輸入?yún)?shù)。例如,我們定義了一個(gè)任務(wù),需要處理數(shù)據(jù)庫(kù)中的數(shù)據(jù)??梢允褂萌缦路绞皆诿钚兄袀鬟f數(shù)據(jù)庫(kù)連接參數(shù):
$ java -jar my-task.jar --spring.datasource.url=jdbc:mysql://localhost:3306/mydb
在Spring Cloud Task應(yīng)用中,可以通過(guò)如下方式獲取傳遞的數(shù)據(jù)庫(kù)連接參數(shù):
@Componentpublic class MyTask implements CommandLineRunner { @Autowired private DataSource dataSource; @Override public void run(String... args) throws Exception { try (Connection conn = dataSource.getConnection()) { // ... } }}
關(guān)鍵詞:
凡注有"環(huán)球傳媒網(wǎng)"或電頭為"環(huán)球傳媒網(wǎng)"的稿件,均為環(huán)球傳媒網(wǎng)獨(dú)家版權(quán)所有,未經(jīng)許可不得轉(zhuǎn)載或鏡像;授權(quán)轉(zhuǎn)載必須注明來(lái)源為"環(huán)球傳媒網(wǎng)",并保留"環(huán)球傳媒網(wǎng)"的電頭。
資訊
- 北京長(zhǎng)峰醫(yī)院發(fā)生火災(zāi),21人遇難 全球熱文
- 中際旭創(chuàng)4月18日龍虎榜數(shù)據(jù)
- 什么是裙帶關(guān)系_裙帶關(guān)系簡(jiǎn)單釋義|報(bào)道
- 即時(shí)看!國(guó)防標(biāo)準(zhǔn)創(chuàng)新信息服務(wù)平臺(tái)在京上線發(fā)布 著力解決標(biāo)準(zhǔn)研制不專等問(wèn)題
- 環(huán)球快資訊丨促排卵藥有哪些牌子_促排卵藥有哪些
- 043期白姐七星彩預(yù)測(cè)獎(jiǎng)號(hào):精選一注號(hào)碼推薦
- 世界熱文:電池級(jí)碳酸鋰價(jià)格跌破20萬(wàn)/噸!十年后電動(dòng)車價(jià)格再跌一半有戲
- TA發(fā)起投票:誰(shuí)是最被高估的球員?特雷-楊獲最高票 占比14.8%_環(huán)球頭條
- 4001695522是哪里電話_4001609511是哪里電話
- 天天播報(bào):形容工作人員工作認(rèn)真負(fù)責(zé)的成語(yǔ)(形容一個(gè)人工作認(rèn)真負(fù)責(zé)的成語(yǔ))
焦點(diǎn)
- 全球金融危機(jī)原因 全球金融危機(jī)的原因介紹
- 土耳其屬于哪個(gè)洲 土耳其的首都是什么?
- 近地小行星是否會(huì)對(duì)地球造成威脅?近地小行星的蹤影匯總
- 油價(jià)或迎第八漲 油價(jià)的后市會(huì)是怎樣的發(fā)展?
- 最丑十大建筑 世界最丑十大建筑有哪些?
- 英國(guó)脫歐是什么 英國(guó)脫歐的原因介紹
- 油價(jià)一跌再跌 海外爆發(fā)對(duì)各國(guó)油氣行業(yè)有什么影響?
- 中國(guó)減持美債原因 減持美債會(huì)帶來(lái)哪些影響?
- 美國(guó)圣誕假期有幾天?除了圣誕還有哪些節(jié)假日?
- 世界上最有錢(qián)的國(guó)家是什么中國(guó)在富有國(guó)家排第幾?