Java之System.getProperty()的作用及使用方法是什么

其他教程   发布日期:2023年05月01日   浏览次数:37

今天小编给大家分享一下Java之System.getProperty()的作用及使用方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

System.getProperty()的作用及使用

最近在看一些代码时,很多地方都用到了System.getProperty()、System.load()、System.loadLibrary()等等

System可以有对标准输入,标准输出,错误输出流;对外部定义的属性和环境变量的访问;加载文件和库的方法;还有快速复制数组的一部分的实用方法System.getProperties()可以确定当前的系统属性,返回值是一个Properties;

  • System.load(String filename)
    等同于:System.getProperties().load(String filename)它们的作用是可以从作为动态库的本地文件系统中以指定的文件名加载代码文件。
  • System.setProperties(Properties propes)
    将系统属性设置为Properties参数;
  • System.setProperties(String key,String value)
    等同于System.getProperties().setProperties(String key,String value):设置指定键指示的系统属性
static void **setProperties**(Properties props) 将系统属性设置为 Properties 参数。
static String **setProperty**(String key, String value) 设置指定键指示的系统属性。
static Properties **getProperties**() 确定当前的系统属性。
static String **getProperty**(String key) 获取指定键指示的系统属性。
static String **getProperty**(String key, String def) 获取用指定键描述的系统属性。

setProperties

public static void setProperties(Properties props)

将系统属性设置为

Properties

首先,如果有安全管理器,则不带参数直接调用其

checkPropertiesAccess
方法。这可能导致一个安全性异常。

参数是 getProperty(String) 方法使用的当前系统属性的集合。如果参数为

null
,则忽略当前系统属性的集合。

参数: - 新的系统属性。

SecurityException``checkPropertiesAccess
另请参见:
public static Properties getProperties()

确定当前的系统属性。

首先,如果有安全管理器,则不带参数直接调用其

checkPropertiesAccess
方法。这可能导致一个安全性异常。

将 getProperty(String) 方法使用的当前系统属性集合作为

Properties
对象返回。如果没有当前系统属性集合,则先创建并初始化一个系统属性集合。

这个系统属性集合总是包含以下键的值:

键相关值的描述

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 用户的当前工作目录

系统属性值中的多个路径是用平台的路径分隔符分隔的。

注意,即使安全管理器不允许执行

getProperties
操作,它可能也会选择允许执行 getProperty(String) 操作。

**返回:**抛出: - 如果安全管理器存在并且其 方法不允许访问系统属性。setProperties(java.util.Properties)SecurityExceptionSecurityManager.checkPropertiesAccess()Properties

Java代码

public class TestSystemGetSet {  
    static{  
        System.setProperty("DB", "mysql");//可以作为全局变量,在任何地方使用  
    }  
    public static void main(String[] args) {  
        System.out.println(System.getProperty("os.version"));  
        System.out.println(System.getProperty("java.library.path"));  
        System.out.println(System.getProperty("DB"));  
    }  
}

输出结果:

10.0
C:Javajdk1.8.0_121in;C:WINDOWSSunJavain;C:WINDOWSsystem32;C:WINDOWS;C:/Java/jre8/bin/server;C:/Java/jre8/bin;C:/Java/jre8/lib/amd64;C:Program FilesIBMWebSphere MQjavalib;C:Program FilesIBMWebSphere MQjavalib64;E:appAdministratorproduct11.2.0dbhome_2in;C:ProgramDataOracleJavajavapath;C:WINDOWSsystem32;C:WINDOWS;C:WINDOWSSystem32Wbem;C:WINDOWSSystem32WindowsPowerShellv1.0;C:Program FilesMySQLMySQL Server 5.1in;D:/mavenin;C:Program Files (x86)Rationalcommon;C:Program FilesIBMWebSphere MQin64;C:Program FilesIBMWebSphere MQin;C:Program FilesIBMWebSphere MQ oolscsamplesin;C:Javajdk1.8.0_121in;C:UsersAdministratorAppDataLocalMicrosoftWindowsApps;D:mavenin;E:softapache-ant-1.10.1in;D:erl9.2in;;C:UsersAdministratorAppDataLocalMicrosoftWindowsApps;E: ooleclipse;;.
mysql

以上就是Java之System.getProperty()的作用及使用方法是什么的详细内容,更多关于Java之System.getProperty()的作用及使用方法是什么的资料请关注九品源码其它相关文章!