[英]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.