1. 程式人生 > 其它 >系統變數之System.getenv()和System.getProperty()

系統變數之System.getenv()和System.getProperty()

Java提供了System類的靜態方法getenv()和getProperty()用於返回系統相關的變數與屬性,getenv方法返回的變數大多於系統相關,getProperty方法返回的變數大多與java程式有關。

System.getenv()方法是獲取指定的環境變數的值。

System.getenv(String str)接收引數為任意字串,當存在指定環境變數時即返回環境變數的值,否則返回null。

System.getProperty()是獲取系統的相關屬性,包括檔案編碼、作業系統名稱、區域、使用者名稱等,此屬性一般由jvm自動獲取,不能設定。

System.getProperty(String str)

接收引數為任意字串,當存在指定屬性時即返回屬性的值,否則返回null。

publicclass testenv {
    publicstaticvoid main(String[] args) {
        Map<String, String> map = System.getenv();
        for(Iterator<String> it = map.keySet().iterator();it.hasNext();){
            String key = it.next();
            System.out.println(key + "=" + map.get(key));
        }   
    }
} 

總結:它們返回的是都是map型別的鍵對值。

在測試專案中經常用在初始化測試環境。

System.getenv()

USERPROFILE        :使用者目錄
USERDNSDOMAIN      :使用者域
PATHEXT            :可執行字尾
JAVA_HOME          :Java安裝目錄
TEMP               :使用者臨時檔案目錄
SystemDrive        :系統碟符
ProgramFiles       :預設程式目錄
USERDOMAIN         :帳戶的域的名稱
ALLUSERSPROFILE    :使用者公共目錄
SESSIONNAME        :Session名稱
TMP                :臨時目錄
Path               :path環境變數
CLASSPATH          :classpath環境變數
PROCESSOR_ARCHITECTURE :處理器體系結構
OS                     :作業系統型別
PROCESSOR_LEVEL    :處理級別
COMPUTERNAME       :計算機名
Windir             :系統安裝目錄
SystemRoot         :系統啟動目錄
USERNAME           :使用者名稱
ComSpec            :命令列直譯器可執行程式的準確路徑
APPDATA            :應用程式資料目錄
System.getProperty()

java.version Java :執行時環境版本
java.vendor Java :執行時環境供應商
java.vendor.url :Java供應商的 URL
java.home &nbsp;&nbsp;:Java安裝目錄
java.vm.specification.version: Java虛擬機器規範版本
java.vm.specification.vendor :Java虛擬機器規範供應商
java.vm.specification.name &nbsp; :Java虛擬機器規範名稱
java.vm.version :Java虛擬機器實現版本
java.vm.vendor :Java虛擬機器實現供應商
java.vm.name&nbsp; :Java虛擬機器實現名稱
java.specification.version:Java執行時環境規範版本
java.specification.vendor:Java執行時環境規範供應商
java.specification.name :Java執行時環境規範名稱
java.class.version :Java類格式版本號
java.class.path :Java類路徑
java.library.path  :載入庫時搜尋的路徑列表
java.io.tmpdir  :預設的臨時檔案路徑
java.compiler  :要使用的 JIT編譯器的名稱
java.ext.dirs :一個或多個擴充套件目錄的路徑
os.name :作業系統的名稱
os.arch  :作業系統的架構
os.version  :作業系統的版本
file.separator :檔案分隔符
path.separator :路徑分隔符
line.separator :行分隔符
user.name :使用者的賬戶名稱
user.home :使用者的主目錄
user.dir:使用者的當前工作目錄