系统变量之System.getenv()和System.getProperty()

Posted SUNSHINEC

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了系统变量之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:用户的当前工作目录

以上是关于系统变量之System.getenv()和System.getProperty()的主要内容,如果未能解决你的问题,请参考以下文章

System.getProperty System.getenv 区别 log4j取法

Java系统变量信息获取方法System.getenv()与System.getProperty()

System.getProperty(key)和System.getenv(key)的用法和区别

java 读取环境变量和系统变量的方法

TOMCAT_OPTS、环境变量和 System.getEnv()

Java读取自定义环境变量的方法System.getProperty和System.getenv