Java 系统属性
获取Java系统属性
Java 的系统属性是指,除了操作系统环境变量之外。JVM 本身的系统属性,这些属性通常包含了 JVM 的一些运行信息。例如:“java.version”
System.getProperty("java.version")
例如:“1.8.0_151” (我本地的 Java版本)
作为 Java 系统属性还可以通过 java 命令的 -D 参数进行设置,例如:java -DMY_NAME=ccc -jar ./example.jar
System.getProperty("MY_NAME")
Hasor接口方式获取
通过 Hasor 框架使用 Environment 接口获取系统属性。
AppContext appContext = Hasor.create().build();
Environment env = appContext.getEnvironment();
System.out.println(env.getVariable("java.version"));
例如:“1.8.0_151” (我的Mac环境)
依赖注入方式
除了上述两种调用接口的方式之外 Hasor 还提供了 @InjectSettings 注解方式来注入配置;针对环境变量的注入,需要使用 ${xxxx} 形式来引入。
// 依赖注入写法
public class TestBean {
@InjectSettings("${java.version}") // 大小写不敏感
private String value;
// get\set ...
}
// 创建Bean并注入环境变量
AppContext appContext = Hasor.create().build();
TestBean testBean = appContext.getInstance(TestBean.class);
System.out.println(testBean.getValue());