When I look at some codes recently, System.getProperty(), System.load(), System.loadLibrary(), etc. are used in many places
System can have standard input, standard output, and error output streams; access to externally defined properties and environment variables; methods for loading files and libraries; and practical methods System.getProperties for quickly copying part of an array. () can determine the current system properties, and the return value is a Properties;
System.load(String filename)
is equivalent to: System.getProperties().load (String filename) Their function is to load the code file with the specified file name from the local file system as a dynamic library.
System.setProperties(Properties propes)
Set system properties to Properties parameters;
System. setProperties(String key,String value)
Equivalent to System.getProperties().setProperties(String key,String value): Set the system properties indicated by the specified key
static void | **setProperties**(Properties props) Sets system properties to Properties parameters. |
---|---|
static String | **setProperty**(String key, String value) Sets the system property indicated by the specified key. |
static Properties | **getProperties**() Determine the current system properties. |
---|---|
static String | **getProperty**(String key) Gets the system property indicated by the specified key. |
static String | **getProperty**(String key, String def) Gets the system property described by the specified key. |
public static void setProperties(Properties props)
Set the system properties to Properties
First, if there is a security manager, then Call its checkPropertiesAccess
method directly without parameters. This may cause a security exception.
The parameter is the collection of current system properties used by the getProperty(String) method. If the argument is null
, the current set of system properties is ignored.
Parameters: - New system property. SecurityException``checkPropertiesAccess
See also:
public static Properties getProperties()
Determine the current system properties.
First, if there is a security manager, call its checkPropertiesAccess
method directly without parameters. This may cause a security exception.
Return the current system property collection used by the getProperty(String) method as a Properties
object. If there is no current system property collection, create and initialize a system property collection first.
This system property collection always contains values for the following keys:
java.version | Java Runtime Environment Version |
---|---|
java.vendor | Java Runtime Environment Vendor |
java.vendor.url | Java vendor URL |
java.home | Java installation directory |
java.vm.specification.version | Java Virtual Machine Specification Version |
java.vm.specification.vendor | Java Virtual Machine Specification Vendor |
java.vm.specification.name | Java Virtual Machine Specification Name |
java.vm. version | Java virtual machine implementation version |
java.vm.vendor | Java virtual machine implementation vendor |
java.vm.name | Java virtual machine implementation name |
java.specification.version | Java runtime environment specification version |
java.specification.vendor | Java Runtime Environment Specification Vendor |
java.specification.name | Java runtime environment specification name |
java.class.version | Java class format version number |
java.class .path | Java class path |
java.library.path | List of paths searched when loading the library |
java.io.tmpdir | Default temporary file path |
java.compiler | The name of the JIT compiler to use |
java.ext.dirs | The path to one or more extension directories |
os.name | The name of the operating system |
os.arch | The architecture of the operating system |
os.version | Operating system version |
file.separator | File separator ("/" on UNIX systems) |
path.separator | Path separator (":" in UNIX systems) |
line.separator | Line separator (in UNIX systems in "/n") |
user.name | User’s account name |
user.home | User’s home directory |
user.dir | User’s current working directory |
系统属性值中的多个路径是用平台的路径分隔符分隔的。
注意,即使安全管理器不允许执行 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:\Java\jdk1.8.0_121\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:/Java/jre8/bin/server;C:/Java/jre8/bin;C:/Java/jre8/lib/amd64;C:\Program Files\IBM\WebSphere MQ\java\lib;C:\Program Files\IBM\WebSphere MQ\java\lib64;E:\app\Administrator\product\11.2.0\dbhome_2\bin;C:\ProgramData\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\MySQL\MySQL Server 5.1\bin;D:/maven\bin;C:\Program Files (x86)\Rational\common;C:\Program Files\IBM\WebSphere MQ\bin64;C:\Program Files\IBM\WebSphere MQ\bin;C:\Program Files\IBM\WebSphere MQ\tools\c\samples\bin;C:\Java\jdk1.8.0_121\bin;C:\Users\Administrator\AppData\Local\Microsoft\WindowsApps;D:\maven\bin;E:\soft\apache-ant-1.10.1\bin;D:\erl9.2\bin;;C:\Users\Administrator\AppData\Local\Microsoft\WindowsApps;E:\tool\eclipse;;.
mysql
The above is the detailed content of What is the function and usage of the System.getProperty() method in Java?. For more information, please follow other related articles on the PHP Chinese website!