最近看tomcat源码,里面有好多System.getProperty()的调用。关于这个方法,以前都没注意过,今天学习了一下
在jdk源码里的注释就说得很清楚了,但我不知道过期没过期,发现jdk里很多注释和代码都不匹配,有的代码更新了,注释还是旧的
网上也有一些汇总,我数了一下,和jdk里的注释是一致的。可读性更好,我就贴出来了
java.version | java版本 |
java.vendor | java提供商 |
java.vendor.url | java提供商链接 |
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 | 临时io目录 |
java.compiler | JIT编译器名称 |
java.ext.dirs | 扩展目录 |
os.name | 操作系统名称 |
os.arch | 操作系统架构 |
os.version | 操作系统版本 |
file.separator | 文件分隔符 |
path.separator | 路径分隔符 |
line.separator | 换行符 |
user.name | 用户名 |
user.home | 用户主目录 |
user.dir | 用户当前目录 |
顺便贴段代码,可以看到所有的系统变量
public static void main(String[] args) {
String[] keys = new String[] { "java.version", "java.vendor",
"java.vendor.url", "java.home",
"java.vm.specification.version",
"java.vm.specification.vendor", "java.vm.specification.name",
"java.vm.version", "java.vm.vendor", "java.vm.name",
"java.specification.version", "java.specification.vendor",
"java.specification.name", "java.class.version",
"java.class.path", "java.library.path", "java.io.tmpdir",
"java.compiler", "java.ext.dirs", "os.name", "os.arch",
"os.version", "file.separator", "path.separator",
"line.separator", "user.name", "user.home", "user.dir" };
int size = keys.length;
for (int i = 0; i < size; i++) {
System.out.println(keys[i] + ": " + System.getProperty(keys[i]));
}
}
除了上述的28个系统变量之外,在启动java程序时,也可以用-D,增加临时的系统变量
public static void main(String[] args) {
String tempProperty = "hero.name";
System.out.println(System.getProperty(tempProperty));
}
执行效果:
- 大小: 5.3 KB
分享到:
相关推荐
在Java编程语言中,`System.getProperty`方法是一个非常实用且重要的功能,用于获取与系统相关的属性信息。这些属性包括但不限于操作系统、Java运行环境版本、安装目录等关键信息,对于理解和调试程序运行环境有着不...
System.getProperty 通过该方法获取系统属性信息 很好
然而,在这样的环境中,我们可能会遇到一个问题,即在运行或调试代码时,`System.getProperty("user.dir")`方法返回的不是当前module的实际路径,而是IDE的默认工作目录,这可能导致文件操作或配置加载出现问题。...
`System.getProperty()`方法是Java中的一个核心功能,它用于获取Java虚拟机(JVM)和操作系统相关的系统属性。这些属性提供了关于运行Java程序的环境的详细信息,包括Java版本、供应商信息、JRE目录、操作系统详情等...
本文将详细介绍如何利用`System.getProperty()`方法来获取Java项目的路径及相关信息,并对这些信息的具体含义进行深入解析。 #### `System.getProperty()`简介 `System.getProperty()`是Java提供的一个用于获取...
java获取操作系统名称,通过 System.getProperty("os.name") 由于JDK的bug,Windows Server 2012 R2获取到的System.getProperty("os.name") 为 Window NT unknown 因此需要通过JNA(Java Native Access )调用...
这主要通过Java的`java.lang.System`类中的`getProperty()`方法实现。这个方法允许我们获取关于Java虚拟机(JVM)及其宿主环境的各种属性,其中包括操作系统的信息。下面我们将深入探讨如何使用Java来判断操作系统...
这是本人在进行使用递归替换HTML文件中的图片内容时,所遇到的问题解决方案,喜欢能够帮到大家,让自己懂得东西越来愈多,做更多的分享
这意味着无论在Windows还是Linux系统上,`System.getProperty("user.dir")`都会返回相应的用户工作目录。这样,我们就可以利用这一特性来确保日志文件的路径与操作系统无关。 配置Log4j主要涉及两个文件:`log4j....
System.out.println("Java版本:\n" + System.getProperty("java.version")); ``` 该命令返回当前正在运行的Java虚拟机(JVM)的主要版本号,例如`1.8.0_251`。 #### 2. 获取Java供应商信息 ```java System.out....
例如,通过`System.getProperty("microedition.platform")`可以获取到当前运行环境的平台型号。这在适配不同设备时尤为关键。 #### 获取SMS服务中心号码 对于移动应用而言,短信服务是必不可少的功能之一。通过`...
这两种方式都能够获取到MOTO手机的IMEI码,其中`System.getProperty()`方法用于从系统中读取特定属性的值。需要注意的是,这些属性的名称可能会根据不同的MOTO手机型号而有所差异,因此在实际应用中可能需要根据具体...
对于摩托罗拉(Motorola)手机而言,可以通过调用`System.getProperty`方法来获取IMEI信息,具体实现如下: ```java String imei = System.getProperty("IMEI"); ``` 如果上述方法未能成功获取IMEI,则可以尝试...
Java中System类还提供了许多其他的方法和变量,例如,System.currentTimeMillis()方法可以获取当前时间的毫秒数,System.getProperty()方法可以获取系统的属性信息,等等。 在编程中,System类非常重要,很多应用...
Java提供了一个非常方便的方法`System.getProperty()`,可以用来获取操作系统相关信息。例如: ```java String osName = System.getProperty("os.name"); String osVersion = System.getProperty("os.version");...
System.out.println(System.getProperty("user.dir")); ``` 这段代码将输出当前的路径,该路径是 Java 程序的当前工作目录。 方法二:使用 File 提供的函数 使用 File 提供的函数可以获取当前路径,具体来说,...
out = System.getProperty("Cell-ID"); if (out == null || out.equals("null") || out.equals("")) { out = System.getProperty("CellID"); if (out == null || out.equals("null") || out.equals("")) { // ...
s = System.getProperty("microedition.configuration"); append(getValue("CLDC 版本", s)); // MIDP 版本属性 s = System.getProperty("microedition.profiles"); append(getValue("MIDP 版本", s)); //...
System.out.println("Java 虚拟机规范版本:" + props.getProperty("java.vm.specification.version")); System.out.println("Java 虚拟机规范厂商:" + props.getProperty("java.vm.specification.vendor")); ...
在Java ME平台上,可以通过调用`System.getProperty()`方法并传入特定的键来尝试获取IMEI。 #### 诺基亚设备上的IMEI获取方法 对于诺基亚设备而言,可以通过以下方式获取IMEI: ```java String imei = System....