Java系统变量参数 获取 设置 System.getProperties()
获取
String osName =System.getProperties().getProperty("os.name");
System.out.println(osName);
设置
System.setProperty("jdbc.drivers","xxx");
这时系统变量才会输出jdbc.drivers系统变量名
常用参数
package com.sd3e.projectmanager.entity.actDemo; import java.util.Properties; /** * @version v1.0 * @ProjectName: jeecg-boot-parent * @ClassName: Main * @Description: System.getProperties() 获取的 Java 系统参数 * @Author: xbx * @Date: 2021/10/21 13:11 */ public class Main { public static void main(String[] args) { Properties properties = System.getProperties(); String osName =System.getProperties().getProperty("os.name"); System.out.println(osName); // for (Object obj : properties.keySet()) { // System.out.println("系统变量:" + obj + " = " + properties.get(obj)); // System.out.println("***********************************************************"); // } for(String propertyName:properties.stringPropertyNames()) { System.out.println("系统变量:"+propertyName+" = "+properties.getProperty(propertyName)); } System.out.println("Java的运行环境版本:"+properties.getProperty("java.version")); System.out.println("Java的运行环境供应商:"+properties.getProperty("java.vendor")); System.out.println("Java供应商的URL:"+properties.getProperty("java.vendor.url")); System.out.println("Java的安装路径:"+properties.getProperty("java.home")); System.out.println("Java的虚拟机规范版本:"+properties.getProperty("java.vm.specification.version")); System.out.println("Java的虚拟机规范供应商:"+properties.getProperty("java.vm.specification.vendor")); System.out.println("Java的虚拟机规范名称:"+properties.getProperty("java.vm.specification.name")); System.out.println("Java的虚拟机实现版本:"+properties.getProperty("java.vm.version")); System.out.println("Java的虚拟机实现供应商:"+properties.getProperty("java.vm.vendor")); System.out.println("Java的虚拟机实现名称:"+properties.getProperty("java.vm.name")); System.out.println("Java运行时环境规范版本:"+properties.getProperty("java.specification.version")); System.out.println("Java运行时环境规范供应商:"+properties.getProperty("java.specification.vender")); System.out.println("Java运行时环境规范名称:"+properties.getProperty("java.specification.name")); System.out.println("Java的类格式版本号:"+properties.getProperty("java.class.version")); System.out.println("Java的类路径:"+properties.getProperty("java.class.path")); System.out.println("加载库时搜索的路径列表:"+properties.getProperty("java.library.path")); System.out.println("默认的临时文件路径:"+properties.getProperty("java.io.tmpdir")); System.out.println("一个或多个扩展目录的路径:"+properties.getProperty("java.ext.dirs")); System.out.println("操作系统的名称:"+properties.getProperty("os.name")); System.out.println("操作系统的构架:"+properties.getProperty("os.arch")); System.out.println("操作系统的版本:"+properties.getProperty("os.version")); //在 unix 系统中是"/" System.out.println("文件分隔符:"+properties.getProperty("file.separator")); //在 unix 系统中是":" System.out.println("路径分隔符:"+properties.getProperty("path.separator")); //在 unix 系统中是"/n" System.out.println("行分隔符:"+properties.getProperty("line.separator")); System.out.println("用户的账户名称:"+properties.getProperty("user.name")); System.out.println("用户的主目录:"+properties.getProperty("user.home")); System.out.println("用户的当前工作目录:"+properties.getProperty("user.dir")); } } /* | java.version | Java 运行时环境版本 | | ----------------------------- | ---------------------------------| | java.vendor | Java 运行时环境供应商 | | java.vendor.url | Java 供应商的 URL | | java.home | Java 安装目录 | | java.vm.specification.version | Java 虚拟机规范版本 | | java.vm.specification.vendor | Java 虚拟机规范供应商 | | java.vm.specification.name | Java 虚拟机规范名称 | | java.vm.version | Java 虚拟机实现版本 | | java.vm.vendor | Java 虚拟机实现供应商 | | java.vm.name | 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 | 文件分隔符(在 UNIX 系统中是“/”) | | path.separator | 路径分隔符(在 UNIX 系统中是“:”) | | line.separator | 行分隔符(在 UNIX 系统中是“/n”) | | user.name | 用户的账户名称 | | user.home | 用户的主目录 | | user.dir | 用户的当前工作目录 | */
Systm.getenv()与System.getProperties()区别
(1)System.getenv()是获取系统环境变量,System.getProperties()是获取当前系统相关
属性信息。
(2)System.getenv():返回当前系统环境的字符串Map,其是不可变的,环境变量是系统相关的
键值对,从父进程传递到子进程.如:JAVA_HOME,PATH等
(3)System.getProperties():获取系统相关属性,比如:Java版本、操作系统信息、用户名等,
这些跟JVM和操作系统相关的属性.如:java.version,os.name,user.dir,file.separator等