Java获取系统环境变量(System Environment Variable)和系统属性(System Properties)以及启动参数的方法
系统环境变量(System Environment Variable):
在Linux下使用export $ENV=123指定的值。获取的方式如下:
Map<String,String> map = System.getenv(); Set<Map.Entry<String,String>> entries = map.entrySet(); for (Map.Entry<String, String> entry : entries) { System.out.println(entry.getKey() + ":" + entry.getValue()); } System.out.println(map.get("ENV"));
系统属性(System Properties):
通过java -jar test.jar -Denv=123启动时指定的值,获取方式如下:
Properties properties = System.getProperties(); Set<Map.Entry<Object, Object>> set = properties.entrySet(); for (Map.Entry<Object, Object> objectObjectEntry : set) { System.out.println(objectObjectEntry.getKey() + ":" + objectObjectEntry.getValue()); } System.out.println(properties.getProperty("env"));
启动参数:
通过java -jar test.jar --env=123启动时指定的值,获取方式如下:
for (String arg : args) { System.out.println(arg); }
其中args就是main方法的参数。其中参数前面的横杠不会去掉。
参考: