黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 編程基礎分享,Java讀取環境變量

編程基礎分享,Java讀取環境變量

更新時間:2020-06-15 16:06:18 來源:動力節點 瀏覽2914次

1.簡介

在Java應用程序中,Java將自動導入包java.lang,包含從NullPointerException到Object,Math和String的許多常用類。

java.lang.System中的類是final類,也就是說,我們不能繼承它,因此,所有的方法都是靜態的。

我們研究讀取系統屬性和環境變量的兩種System方法之間的區別。

這些方法是getProperty和getenv。

2.使用System.getProperty()

Java平臺使用Properties對象提供有關本地系統和配置的信息,我們將其稱為System Properties。

系統屬性包括諸如當前用戶,Java運行時的當前版本以及文件路徑名分隔符之類的信息。

在下面的代碼中,我們使用System.getProperty(“log_dir”)讀取屬性log_dir的值。我們還使用默認值參數,因此,如果該屬性不存在,則getProperty返回"/tmp/log":

String log_dir=System.getProperty("log_dir","/tmp/log");

要在運行時更新系統屬性,可以使用System.setProperty方法(盡量不要使用):

System.setProperty("log_dir","/tmp/log");

我們可以使用propertyName命令行參數將自己的屬性或配置值傳遞給應用程序,格式為

java-jar jarName-DpropertyName=value

在app.jar中將foo的屬性設置為bar值:

java-jar app-Dfoo=“bar”

System.getProperty將始終返回String。

3.使用System.getenv()

環境變量是鍵/值對和Properties一樣。許多操作系統使用環境變量來允許將配置信息傳遞到應用程序中。

設置環境變量的方式因操作系統而異。在Windows中,可以從控制面板使用System Utility應用程序,而在Unix中,可以使用shell腳本。

創建進程時,默認情況下,它會繼承其父進程的克隆環境變量。

以下代碼段顯示了使用lambda表達式打印所有環境變量。

System.getenv().forEach((k,?v)?->?{
????System.out.println(k?+?":"?+?v);
});

getenv()返回一個只讀Map。嘗試向地圖添加值會拋出

UnsupportedOperationException。

要獲取單個變量,請使用變量名稱調用getenv:

String log_dir=System.getenv("log_dir");

另一方面,我們可以從應用程序中創建另一個進程,并將新變量添加到其環境中。

要使用Java創建新流程,我們使用ProcessBuilder類,通過environment方法可以添加自定義的環境變量

ProcessBuilder?pb?=?new?ProcessBuilder(args);
Map<String,?String>?env?=?pb.environment();
env.put("log_dir",?"/tmp/log");
Process?process?=?pb.start();

4.差異

盡管兩者本質上都是為String鍵提供String值的映射,但讓我們看一些區別:

當環境變量是操作系統變量的不可變副本時,我們可以在運行時更新屬性。

屬性僅包含在Java平臺內,而環境變量在操作系統級別是全局的-可供同一計算機上運行的所有應用程序使用。

打包應用程序時,屬性必須存在,但是我們幾乎可以在任何時候在操作系統上創建環境變量。

5.結論

盡管在概念上相似,但是屬性和環境變量的應用都非常不同。

選擇哪一個通常是范圍的問題。使用環境變量,可以將同一應用程序部署到多臺計算機上以運行不同的實例,并且可以在操作系統級別甚至在云控制臺中進行配置。無需重建應用程序即可更新配置。

始終記住,getProperty遵循駝峰式約定,而getenv則不遵循。

編程基礎分享,Java讀取環境變量

以上就是動力節點java培訓機構的小編針對“編程基礎分享,Java讀取環境變量”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 精品国产一区二区麻豆 | 亚洲免费毛片 | 欧美禁片在线观看免费 | 欧美日韩亚洲v在线观看 | 91精品成人免费国产片 | 波多野结衣一区二区三区在线观看 | 亚洲欧美中文字幕在线网站 | 色www视频永久免费 骚片免费 | 国内精品 大秀视频 日韩精品 | 欧美成人午夜视频在线观看 | 亚洲香蕉一区二区三区在线观看 | 欧美在线观看一区二区三区 | 精品卡1卡2卡三卡免费网站 | 最近中文免费字幕8 | 日韩免费一区二区 | 久久精品免费观看视频 | 毛片免费在线观看 | 在线亚洲不卡 | 在线日韩国产 | 亚洲香蕉一区二区三区在线观看 | 精品视频一区二区三区四区 | 日韩小视频在线播放 | 中文天堂在线最新2022更新 | 亚洲精品成人图区 | 一级毛片特黄久久免费看 | 亚洲国产成人久久综合一 | 一级黄色片一级黄色片 | 日本在线一区二区三区 | 亚洲福利视频一区 | 日本aⅴ精品一区二区三区久久 | 精选国产门事件福利在线观看 | 好男人www社区视频在线 | 91久久精品都在这里 | 99ri在线精品视频 | 人人做人人爽 | 欧美日韩亚洲一区二区 | 欧美成a高清在线观看www | 嫩草影院永久在线一二三四 | 日韩欧美综合 | 精品一区二区三区视频在线观看免 | 又爽又黄又无遮挡的视频在线观看 |