public static void main(String[] args) {
// 创建 PropertyPlaceholderHelper 实例
PropertyPlaceholderHelper helper = new PropertyPlaceholderHelper("${", "}", ":", true);
// 定义属性文件内容
String content = "username=${version:100},password=${password},MAVEN_OPTS=${MAVEN_OPTS}";
// method 1 使用 PropertyPlaceholderHelper 解析属性文件内容
String result = helper.replacePlaceholders(content, new Properties() {{
setProperty("password", "123");
}});
// 打印解析结果
System.out.println(result);
// method 2 定义一个解析器,从环境变量中获取值
PropertyPlaceholderHelper.PlaceholderResolver resolver = new PropertyPlaceholderHelper.PlaceholderResolver() {
@Override
public String resolvePlaceholder(String placeholderName) {
// 从环境变量获取值
return System.getenv(placeholderName);
}
};
result = helper.replacePlaceholders(content, resolver);
System.out.println(result);
}
输出
username=100,password=123,MAVEN_OPTS=${MAVEN_OPTS}
username=100,password=${password},MAVEN_OPTS=-Xms256m -Xmx512m -Dfile.encoding=UTF-8