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方法的参数。其中参数前面的横杠不会去掉。

参考:

http://m.jb51.net/article/83454.htm

原文地址:https://www.cnblogs.com/EasonJim/p/7610910.html