首页 > 代码库 > Java SE学习之System.getProperties

Java SE学习之System.getProperties

本文是学习网络上的文章时的总结,感谢大家无私的分享。

Java提供的java System.getProperties()方法是获取运行环境的系统参数的,综合了网上各位大神的帖子我总结出一些可用属性。

java.versionJava 运行时环境版本
java.vendorJava 运行时环境供应商
java.vendor.urlJava 供应商的 URL
java.homeJava 安装目录
java.vm.specification.versionJava 虚拟机规范版本
java.vm.specification.vendorJava 虚拟机规范供应商
java.vm.specification.nameJava 虚拟机规范名称
java.vm.versionJava 虚拟机实现版本
java.vm.vendorJava 虚拟机实现供应商
java.vm.nameJava 虚拟机实现名称
java.specification.versionJava 运行时环境规范版本
java.specification.vendorJava 运行时环境规范供应商
java.specification.nameJava 运行时环境规范名称
java.class.versionJava 类格式版本号
java.class.pathJava 类路径
java.library.path加载库时搜索的路径列表
java.io.tmpdir默认的临时文件路径
java.compiler要使用的 JIT 编译器的名称
java.ext.dirs一个或多个扩展目录的路径
os.name操作系统的名称
os.arch操作系统的架构
os.version操作系统的版本
file.separator文件分隔符(在 UNIX 系统中是“/”)
path.separator路径分隔符(在 UNIX 系统中是“:”)
line.separator行分隔符(在 UNIX 系统中是“/n”)
user.name用户的账户名称
user.home用户的主目录
user.dir用户的当前工作目录

我本机测试时,还有一些属性没有弄明白,还需研究。

测试代码:

package SE;
import java.util.Enumeration;
import java.util.Properties;
import java.util.Set;

public class JavaProperties {

	/**
	 * <p>
	 * </p>
	 * @author zhangjunshuai
	 * @date 2014-10-22 下午5:11:57
	 * @param args
	 */
	public static void main(String[] args) {

		Properties p = System.getProperties();

		System.out.println("Java 运行时环境版本: "+p.getProperty("java.version"));
		System.out.println("Java 运行时环境供应商: "+p.getProperty("java.vendor"));
		System.out.println("Java 供应商的 URL: "+p.getProperty("java.vendor.url"));
		System.out.println("Java 的安装路径: "+p.getProperty("java.home"));
		System.out.println("Java 虚拟机规范版本: "+p.getProperty("java.vm.specification.version"));
		System.out.println("Java 虚拟机规范供应商: "+p.getProperty("java.vm.specification.vendor"));
		System.out.println("Java 虚拟机规范名称: "+p.getProperty("java.vm.specification.name"));
		System.out.println("Java 虚拟机实现版本: "+p.getProperty("java.vm.version"));
		System.out.println("Java 虚拟机实现供应商: "+p.getProperty("java.vm.vendor"));
		System.out.println("Java 虚拟机实现名称: "+p.getProperty("java.vm.name"));
		System.out.println("Java 运行时环境规范版本: "+p.getProperty("java.specification.version"));
		System.out.println("Java 运行时环境规范供应商: "+p.getProperty("java.specification.vendor"));
		System.out.println("Java 运行时环境规范名称: "+p.getProperty("java.specification.name"));
		System.out.println("当前类的格式版本号: "+p.getProperty("java.class.version"));
		System.out.println("当前类所在的路径: "+p.getProperty("java.class.path"));
		System.out.println("加载库时搜索的路径列表: "+p.getProperty("java.library.path"));
		System.out.println("默认的临时文件路径: "+p.getProperty("java.io.tmpdir"));
		System.out.println("要使用的 JIT 编译器的名称: "+p.getProperty("java.compiler"));
		System.out.println("一个或多个扩展目录的路径: "+p.getProperty("java.ext.dirs"));
		System.out.println("操作系统的名称: "+p.getProperty("os.name"));
		System.out.println("操作系统的架构: "+p.getProperty("os.arch"));
		System.out.println("操作系统的版本: "+p.getProperty("os.version"));
		System.out.println("当前操作系统的文件分隔符: "+p.getProperty("file.separator"));
		System.out.println("当前操作系统的路径分隔符: "+p.getProperty("path.separator"));
		System.out.println("当前操作系统的行分隔符: "+p.getProperty("line.separator"));
		
		System.out.println("用户的当前账户名称: "+p.getProperty("user.name"));
		System.out.println("用户的当前工作目录: "+p.getProperty("user.dir"));
		System.out.println("用户的主目录: "+p.getProperty("user.home"));
		
		
		Properties prop = System.getProperties();
        Set<Object> keySet = prop.keySet();
        for(Object obj : keySet){
            System.out.println("System Property: {"+obj.toString()+","+System.getProperty(obj.toString())+"}");
        }
		
	}

}

最后的遍历是循环出所有的属性。

参考:

java 通过System.getProperties()获取系统参数

Java SE学习之System.getProperties