2

我想用我的 Yaml 文件创建一些 java 对象。这是源代码:

package foo;

public class Sample {

    private String name;
    private String description;

    private Integer value;

    public Sample(String name, String description) {
        this.name = name;
        this.description = description;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public Integer getValue() {
        return value;
    }

    public void setValue(Integer value) {
        this.value = value;
    }
}

一个非常简单的java类。这是 Yaml 文件:

mySample: !!foo.Sample [ 'Name', 'Description' ]
  value: 123

例外是:

while parsing a block mapping
 in 'string', line 4, column 1:
    mySample: !!foo.Sample [ 'Name', ... 

但是,如果我删除“值”的设置,它就会起作用。是否不可能使用另一个构造函数作为默认值创建对象,然后设置一些成员属性?

这运行完美,但没有“价值”的价值:

mySample: !!foo.Sample [ 'Name', 'Description' ]
4

1 回答 1

0

我认为您正在寻找的是 CompactObjectNotation,这是 SnakeYAML 中超出规范的功能。

https://code.google.com/p/snakeyaml/wiki/CompactObjectNotation

于 2015-01-22T15:43:16.443 回答