System.getenv()与System.getProperty()

关于System.getenv()与System.getProperty()的区别,链接1 、链接2 讲的很清楚。

链接3 讲了spring boot 启动时指定系统属性。

下面通过阅读上面的文章,我的总结:

  1. System.getenv()
    使用场景: 获取的是操作系统变量,如PATH、HOME等在操作系统层面配置的参数,dockerfile文件中声明的ENV变量、sh脚本中export设置的属性都属于系统变量,都可以通过System.getenv()获取
    查看全部的系统变量: 执行System.getenv(),不传参数,可以获取全部的系统属性
  2. System.getProperty()
    使用场景: 获取的是java平台生效的属性,如Spring Boot应用的配置属性application.properties、JVM参数等
    兜底参数: System.getProperty(“属性名”,“兜底值”)当属性值不存在的时候,用兜底值代替

你可能感兴趣的:(java)