Java如何設(shè)置系統(tǒng)參數(shù)和運(yùn)行參數(shù)
系統(tǒng)參數(shù)
系統(tǒng)級(jí)全局變量,該參數(shù)在程序中任何位置都可以訪(fǎng)問(wèn)到。優(yōu)先級(jí)最高,覆蓋程序中同名配置。
系統(tǒng)參數(shù)的標(biāo)準(zhǔn)格式為:-Dargname=argvalue,多個(gè)參數(shù)之間用空格隔開(kāi),如果參數(shù)值中間有空格,則用引號(hào)括起來(lái)。
其中,參數(shù)名可以是 Java 默認(rèn)的,此類(lèi)參數(shù)由 JVM 虛擬機(jī)自動(dòng)識(shí)別并生效,例如,-Dfile.encoding=UTF-8 用于指定文件編碼格式;也可以是用戶(hù)自定義的,例如,-Dmy=user,程序中可以讀取該參數(shù)值,執(zhí)行相關(guān)邏輯。
虛擬機(jī)系統(tǒng)參數(shù)中設(shè)置的參數(shù)鍵值對(duì),在程序中可以用 System.getProperty("propertyName") 獲取對(duì)應(yīng)參數(shù)值。
public static void main(String[] args) { String result = System.getProperty("argname"); System.out.println("argname: " + result); }
運(yùn)行參數(shù)
main 方法執(zhí)行時(shí)傳入的參數(shù)值,如果參數(shù)有多個(gè),用空格分開(kāi)。
main 方法的一般格式為:public static void main(String[] args),其中,Stringp[] args 就是存儲(chǔ)運(yùn)行參數(shù)的變量,在程序中可以直接使用。
public static void main(String[] args) { if (args.length > 0) { for (int i = 0; i < args.length; i++) { System.out.println("第" + i + "個(gè)參數(shù)為: " + args[i]); } } }
命令行中的參數(shù)設(shè)置
java 命令的基本格式為 java [-options] class [args...],其中:
[-options] 配置 Java 系統(tǒng)參數(shù)
[args…] 配置 Java 運(yùn)行參數(shù)
示例:java -Dfile.encoding=UTF-8 -Dargname=argvalue Test hi a b c d
IDEA 中的參數(shù)設(shè)置
- Run- Edit Configurations... - Spring Boot - App - Configuration - Environment
- VM options: 設(shè)置系統(tǒng)參數(shù)
- Program arguments: 設(shè)置運(yùn)行參數(shù)
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Springboot2.x 使用 Log4j2 異步打印日志的實(shí)現(xiàn)
這篇文章主要介紹了Springboot2.x 使用 Log4j2 異步打印日志的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12使用SpringBoot設(shè)置虛擬路徑映射絕對(duì)路徑
這篇文章主要介紹了使用SpringBoot設(shè)置虛擬路徑映射絕對(duì)路徑的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08Java線(xiàn)程間通信不同步問(wèn)題原理與模擬實(shí)例
這篇文章主要介紹了Java線(xiàn)程間通信不同步問(wèn)題,結(jié)合實(shí)例形式分析了java線(xiàn)程間通信不同步問(wèn)題的原理并模擬實(shí)現(xiàn)了線(xiàn)程間通信不同步情況下的異常輸出,需要的朋友可以參考下2019-10-105分鐘快速學(xué)會(huì)spring boot整合Mybatis的方法
這篇文章主要給大家介紹了如何通過(guò)5分鐘快速學(xué)會(huì)spring boot整合Mybatis的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用spring boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12關(guān)于Spring中Bean的創(chuàng)建進(jìn)行更多方面的控制
今天小編就為大家分享一篇關(guān)于關(guān)于Spring中Bean的創(chuàng)建進(jìn)行更多方面的控制,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-01-01Logback 使用TurboFilter實(shí)現(xiàn)日志級(jí)別等內(nèi)容的動(dòng)態(tài)修改操作
這篇文章主要介紹了Logback 使用TurboFilter實(shí)現(xiàn)日志級(jí)別等內(nèi)容的動(dòng)態(tài)修改操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08SpringBoot通過(guò)ThreadLocal實(shí)現(xiàn)登錄攔截詳解流程
這篇文章主要介紹了SpringBoot(HandlerInterceptor)+ThreadLocal實(shí)現(xiàn)登錄攔截,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05