Java中的system.getProperty()的作用及使用方法
system.getProperty()的作用及使用方法
System.getProperty() 方法用于獲取系統(tǒng)屬性的值。系統(tǒng)屬性是指在系統(tǒng)配置文件中定義的屬性,如操作系統(tǒng)名稱、版本號(hào)等。該方法接受一個(gè)字符串參數(shù),表示要獲取的系統(tǒng)屬性的名稱,返回值為字符串類型,表示該屬性的值。 示例代碼如下:
String osName = System.getProperty("os.name");
System.out.println("操作系統(tǒng)名稱:" + osName);上述代碼中,System.getProperty("os.name") 獲取了操作系統(tǒng)名稱的值,并將其賦給變量 osName,最后通過 System.out.println() 方法將操作系統(tǒng)名稱打印出來。 除了獲取系統(tǒng)屬性的值,System.getProperty() 方法還可以用于設(shè)置系統(tǒng)屬性的值。示例代碼如下:
System.setProperty("my.property", "123");
String myProperty = System.getProperty("my.property");
System.out.println("my.property 的值為:" + myProperty);上述代碼中,System.setProperty("my.property", "123") 設(shè)置了名為 my.property 的系統(tǒng)屬性的值為 123,然后通過 System.getProperty("my.property") 獲取該屬性的值,并將其打印出來。 需要注意的是,由于系統(tǒng)屬性是在系統(tǒng)配置文件中定義的,因此在不同的操作系統(tǒng)和不同的 JVM 中可能會(huì)有不同的屬性名稱和屬性值。因此,在使用 System.getProperty() 方法時(shí),應(yīng)該盡量避免硬編碼屬性名稱和屬性值,而應(yīng)該根據(jù)具體情況動(dòng)態(tài)獲取。
System.getProperty()
System類來自于這個(gè)包:java.lang.System
System.getProperty("XXX")方法用來讀取JVM中的系統(tǒng)屬性,那么java 虛擬機(jī)中的系統(tǒng)屬性使用在運(yùn)行java程序的時(shí)候java -D配置,有兩種方式
1-在命令行配置
在eclipse中,選中這個(gè)項(xiàng)目,然后在工具欄中選擇run-->run configurations,在出現(xiàn)的對(duì)話框的右邊選擇“Arguments”,然后在VM arguments中輸入-DconfigurePath=hello。如下圖:

2-在IDE中配置
在菜單欄中選擇:run->Edit configurations.會(huì)出現(xiàn)下面的對(duì)話框


在該對(duì)話框中點(diǎn)擊“Environment variables”將會(huì)出現(xiàn)添加環(huán)境變量的對(duì)話框,如下所示,可以在下面的對(duì)話框中添加新的或者修改刪除已經(jīng)存在的系統(tǒng)變量。

java默認(rèn)的系統(tǒng)變量有下面這些:
java.version:java運(yùn)行時(shí)版本
java.vendor:java運(yùn)行時(shí)環(huán)境供應(yīng)商
java.vendor.url:java供應(yīng)商url
java.home;java安裝目錄
java.vm.specification.version:java虛擬機(jī)規(guī)范版本
java.vm.specification.vendor:java虛擬機(jī)規(guī)范供應(yīng)商
java.vm.specification.name:java虛擬機(jī)規(guī)范名稱
java.vm.version:java虛擬機(jī)實(shí)現(xiàn)版本
java.vm.vendor:java虛擬機(jī)實(shí)現(xiàn)供應(yīng)商
java.vm.name:java虛擬機(jī)實(shí)現(xiàn)名稱
java.specification.version:java運(yùn)行時(shí)環(huán)境規(guī)范版本
java.specification.vendor:java運(yùn)行時(shí)環(huán)境規(guī)范運(yùn)營商
java.specification.name:java運(yùn)行時(shí)環(huán)境規(guī)范名稱
java.class.version:java類格式版本
java.class.path:java類路徑
java.library.path:加載庫是搜索的路徑列表
java.io.tmpdir:默認(rèn)的臨時(shí)文件路徑
java.compiler:要使用的JIT編譯器的路徑
java.ext.dirs:一個(gè)或者多個(gè)擴(kuò)展目錄的路徑
os.name:操作系統(tǒng)的名稱
os.arch:操作系統(tǒng)的架構(gòu)
os.version:操作系統(tǒng)的版本
file.separator:文件分隔符(在unix系統(tǒng)中是“/”)
path.separator:路徑分隔符(在unix系統(tǒng)中是“:”)
line.separator:行分隔符(在unix系統(tǒng)中是“/n”)
user.name:用戶的賬戶名稱
user.home:用戶的主目錄
user.dir:用戶的當(dāng)前工作目錄
以上都是默認(rèn)的java 系統(tǒng)變量,可以通過System.setProperty("key",value)l來進(jìn)行設(shè)置
到此這篇關(guān)于Java中的system.getProperty()的作用及使用方法的文章就介紹到這了,更多相關(guān)system.getProperty()內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java實(shí)現(xiàn)圖書管理系統(tǒng)的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何利用java語言實(shí)現(xiàn)簡單的圖書管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-08-08
javabean?中使用@Transient屬性處理臨時(shí)字段
@Transient表示該屬性并非一個(gè)到數(shù)據(jù)庫表的字段的映射,ORM框架將忽略該屬性,本文給大家介紹javabean?中臨時(shí)字段的處理:@Transient,感興趣的朋友跟隨小編一起看看吧2023-08-08
JAVA實(shí)現(xiàn)單例模式的四種方法和一些特點(diǎn)
JAVA實(shí)現(xiàn)單例模式的四種方法和一些特點(diǎn),需要的朋友可以參考一下2013-03-03
Java常用鎖synchronized和ReentrantLock的區(qū)別
這篇文章主要介紹了Java常用鎖synchronized和ReentrantLock的區(qū)別,二者的功效都是相同的,但又有很多不同點(diǎn),下面我們就進(jìn)入文章了解具體的相關(guān)內(nèi)容吧。需要的小伙伴也可以參考一下2022-05-05
Java利用?Spire.XLS?for?Java設(shè)置Excel行列自適應(yīng)
本文將聚焦于Java如何利用 Spire.XLS for Java 庫,以編程的方式優(yōu)雅地實(shí)現(xiàn) Excel 行列的自動(dòng)適應(yīng),讓你的自動(dòng)化辦公流程更加順暢高效,感興趣的小伙伴可以了解下2026-01-01
springboot不掃描@repository的問題及解決
這篇文章主要介紹了springboot不掃描@repository的問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05
SpringBoot內(nèi)嵌Tomcat臨時(shí)目錄問題及解決
這篇文章主要介紹了SpringBoot內(nèi)嵌Tomcat臨時(shí)目錄問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-04-04

