如何用snakeyaml中的破折号解析字段名称?

时间:2015-10-28 13:00:48

标签: java field snakeyaml

我有yaml文件的片段:

field-name: my/data

但我无法使用方法名称setField-name

创建pojo

有没有办法解析这样的yaml文件?

1 个答案:

答案 0 :(得分:2)

您可以传递自定义PropertyUtils来处理此类情况

Constructor c = new Constructor(MyClass.class);
c.setPropertyUtils(new PropertyUtils() {
    @Override
    public Property getProperty(Class<? extends Object> type, String name) throws IntrospectionException {
      if ( name.indexOf('-') > -1 ) {
        name = toCameCase(name);
      }
      return super.getProperty(type, name);
    }
  });
Yaml yaml = new Yaml(c);
MyClass obj = (MyClass) yaml.load(input);