[英]Parse a yaml with placeholder in Java
我有一个 yaml 文件,其中包含要从环境变量中获取的占位符。 我想将其解析为自定义 class。 目前我正在使用snakeyaml 库来解析它并正确填充bean,如何使用snakeyaml 或Java 中的任何其他库来解析环境变量。
datasource:
url: {url_environment_variable}
foo: bar
username: {user_name_environment_variable}
password: {password_environment_variable}
@Getter
@Setter
public class DataSource {
private String url;
private String foo;
private String username;
private String password;
}
下面解析代码
Constructor c = new Constructor(MyDataSource.class);
Yaml yaml = new Yaml(c);
MyDataSource myData = yaml.loadAs(inputStream, MyDataSource.class);
问题是我还没有找到解决占位符的方法。 人们能够使用 python 解决它,并且有问题 - How to replace environment variable value in yaml file to be parsed using python script
我怎样才能在 Java 中做同样的事情。 如果需要,我可以添加新的依赖项。 PS - 它不是 Spring 引导项目,因此不能使用标准 Spring 占位符替换。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.