过滤掉snakeyaml中的空字段

时间:2016-09-28 10:40:37

标签: null snakeyaml

我正在使用snakeyaml在YAML文件中打印我的对象。有些字段可能为null。 当这些字段在文件中打印为空时,如何阻止这些字段?

1 个答案:

答案 0 :(得分:6)

经过一番研究,我终于找到了解决方案。需要更改在Representer中表示空字段的方式 这是代码

Representer representer = new Representer() {
    @Override
    protected NodeTuple representJavaBeanProperty(Object javaBean, Property property, Object propertyValue,Tag customTag) {
        // if value of property is null, ignore it.
        if (propertyValue == null) {
            return null;
        }  
        else {
            return super.representJavaBeanProperty(javaBean, property, propertyValue, customTag);
        }
    }
};

在YAML对象中使用此代表。