【java编程】使用System.getProperty方法,如何配置JVM系统属性
转载:https://www.cnblogs.com/acm-bingzi/p/6673823.html
很多时候我们需要在项目中读取外部属性文件,用到了System.getProperty("")方法。这个方法需要配置JVM系统属性,那么如何配置呢?
那就是使用java -D 配置系统属性。
使用格式是:java -Dkey=value
比如新建一个测试类,如下:
public class Test {
public static void main(String[] args){
System.out.println(System.getProperty("configurePath"));
}
}
这段代码直接执行的话,会输出null
接下来需要配置configurePath属性了,有两种方法。
第一种方法是在启动tomcat的时候配置:
比如在myeclipse中,选中这个项目,然后在工具栏中选择"Run-->Run Confgurations“,然后在对话框的右边选择"Arguments,然后在VM arguments中输入-DconfigurePath=hello。如下图:

然后就会在控制台输出:hello
第二种方法是在执行java命令的时候配置:
将之前的测试类导出为一个jar包,再控制台使用命令执行:java -DconfigurePath=hello -jar Test.jar
也会得到hello

以下转载自网络:
java -D 配置系统属性
使用案例
其实,在不知不觉中我们已经在使用-D的参数项,比如用下面参数来配置文件编码:
-Dfile.encoding=UTF-8
再比如,用以下参数来配置dubbo的选项:
java -Ddubbo.reference.com.foo.BarService.check=false
java -Ddubbo.reference.check=false
java -Ddubbo.consumer.check=false
java -Ddubbo.registry.check=false
功能解析
-D=value
官网解释:
Set a system property value. If value is
a string that contains spaces, you must enclose the string in double quotes:
在虚拟机的系统属性中设置属性名/值对,运行在此虚拟机上的应用程序可用:
System.getProperty("属性名")
得到value的值。
如果value中有空格,则需要用双引号将该值括起来,如:-Dname=”kazaf f”。
该参数通常用于设置系统级全局变量值,如配置文件路径,保证该属性在程序中任何地方都可访问。
注意事项
(1)需要设置的是JVM参数而不是program参数;
(2)使用此参数的参数优先级最高,会覆盖项目中配置的此项;
【java编程】使用System.getProperty方法,如何配置JVM系统属性的更多相关文章
- 使用System.getProperty方法,如何配置JVM系统属性
原创文章,欢迎转载,转载请注明出处! 很多时候我们需要在项目中读取外部属性文件,用到了System.getProperty("")方法.这个方法需要配置JVM系统属性,那么如何配置 ...
- 使用System.getProperty方法,如何配置JVM系统属性 (转载)
很多时候需要在项目中读取外部属性文件,用到了System.getProperty("")方法.这个方法需要配置JVM系统属性,那么如何配置呢? 那就是使用java -D 配置系统属 ...
- Java基础 之 System.getProperty()方法
Java基础 之 System.getProperty()方法大全 public static void main(String[] args) { System.out.println(" ...
- 如何配置JVM系统属性及获取方式System.getProperty("pname")
https://www.cnblogs.com/keyi/p/7721893.html
- 获取当前应用的系统路径工具类和java的System.getProperty()方法介绍
java的System.getProperty()方法可以获取的值,如下: 对于Java程序,无论是未打包的还是打包的JAR或WAR文件,有时候都需要获取它运行所在目录信息,如何做到这一点呢? /** ...
- Java System.getProperty()方法获取系统信息
用 System.getProperty()方法能获取到的系统信息: java.version Java 运行时环境版本 java.vendor Java 运行时环境供应商 java.vendor.u ...
- 斐波那契数列-java编程:三种方法实现斐波那契数列
题目要求:编写程序在控制台输出斐波那契数列前20项,每输出5个数换行 斐波那契数列指的是这样一个数列:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, … 这个数列 ...
- System.getProperty()方法大全
System.out.println("当前程序所在目录:" + System.getProperty("user.dir")); // 当前程序所在目录 Sy ...
- System.getProperty()方法获取大全
System.out.println("java版本号:" + System.getProperty("java.version")); // java版本号 ...
随机推荐
- 验证码 kaptcha 参数详解
Constant 描述 默认值 kaptcha.border 图片边框,合法值:yes , no yes kaptcha.border.color 边框颜色,合法值: r,g,b (and optio ...
- sqlalchemy 模型中添加根据身份证号计算性别和年龄
class Users(Base, BaseMixin): username = Column(String(24)) id_Num = Column(String(18) ) # 身份证号码 @pr ...
- tomcat版本对应jee版本等信息
可以参考官方: http://tomcat.apache.org/whichversion.html http://www.bubuko.com/infodetail-674892.html
- Cracking The Coding Interview 9.0
#include <iostream> #include <vector> using namespace std; void mswap(int &a, int &a ...
- MII接口介绍(转)
1.简介 MII (Media Independent Interface(介质无关接口)或称为媒体独立接口,它是IEEE-802.3定义的以太网行业标准.它包括一个数据接口和一个MAC和PHY之间的 ...
- DevExpress v18.1新版亮点——XAF篇(一)
用户界面套包DevExpress v18.1日前正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了DevExpress eXpressApp Framework(XAF) v18.1 ...
- CSS学习笔记-03- 过渡模块之前奏篇 a标签的伪类选择器
CSS3 2D转换CSS3 3D转换CSS3 过渡CSS3 动画 CSS3 的四大金刚. 想要实现酷炫的视觉效果,上面4个是必须要掌握的.学习之前,先复习一下 视觉盛宴的前菜 :a标签的伪类选择器 铛 ...
- PC或者手机上实现相机拉近和旋转
using System.Collections;using System.Collections.Generic;using UnityEngine;using System; //[Seriali ...
- h5页面嵌入android app时遇到的问题
1.h5页面 通过 .css("transform") 或 .style.transform 获取 transform属性,并通过 split 方法解析 页面translateY ...
- MySQL:安装mysqld系统及基础应用
MySQL篇 第一章.安装mysqld系统及基础应用 一.安装 注意:mysql的标点符号只能是英文的标点符号. 1.设置配置文件. 文件格式:文本格式 文件位置:Mysql的主目录下 文件名称:my ...