是否可以在运行时获取yaml属性



yaml非常方便,因为您可以很好地从yaml反序列化为java,但在我的情况下,我需要能够在运行时获得属性值。有没有一种方法可以像使用.properties文件一样实现这一点,例如,只需使用property键值?

appName: myAppName

在这里,我想使用snakeyaml库在运行时获得myAppName值。

Yes yaml.load()基本上返回一个java对象,因此您可以简单地将其转换为适当的类型并获得所需的内容:

    Yaml yaml = new Yaml();
    String input = "{appName: myAppName, appVersion: myAppVerison}";
    Map yamlMap = (Map)yaml.load(input);
    assertEquals("myAppName", yamlMap.get("appName"));

最新更新