-1

yaml 非常方便,因为您可以从 yaml 到 java 进行很好的反序列化,但在我的情况下,我需要能够在运行时获取属性值。有没有办法像使用 .properties 文件一样完成此操作,例如,仅通过拥有属性键值?

appName: myAppName

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

4

1 回答 1

1

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

    Yaml yaml = new Yaml();
    String input = "{appName: myAppName, appVersion: myAppVerison}";
    Map yamlMap = (Map)yaml.load(input);
    assertEquals("myAppName", yamlMap.get("appName"));
于 2013-07-16T08:44:19.410 回答