如何在Play中的YAML文件中定义Map!框架?

时间:2011-01-09 20:01:55

标签: java playframework snakeyaml

我正在使用Play!框架和我有一个模型(实体),其变量类型为Map。

要进行一些测试,我每次启动应用程序时都会加载一个YAML文件,但我不知道定义Map的语法。

假设我有这个课程

public class aClass {
    public int arg1;
    public String arg2;
    public Map<String, Integer> arg3;
}

我的YAML文件会是什么样子?我试过这个:

aClass(object1)
    arg1:   34
    arg2:   aString
    arg3:   [key1: value1, key2: value2] <- What do I do here?

这是我多次尝试之一。我不知道语法,我无法在互联网上找到它。我觉得玩!使用SnakeYAML作为YAML解析器。

在文档中我找到了一些例子,但没有一个能够奏效。

在我的应用程序中,除了Map变量(示例中的arg3)的大小为0元素外,一切正常。

感谢。

1 个答案:

答案 0 :(得分:6)

根据Google Groups上的这个帖子,您需要的语法似乎是使用问号。

该线程具有以下语法的工作映射。

Bloc(b2): 
  labelSeries: testDeValeur 
  criterias: 
    ? key1 
    : value1 
    ? key2 
    : value2 

所以,我想你的例子是

aClass(object1)
  arg1:   34
  arg2:   aString
  arg3:   
    ? key1
    : value1
    ? key2
    : value2

我已对此进行了测试,但它不起作用!我建议提出一个bug来看看这个,因为所有文档指出这都是正确的。