本文介绍了如何在snakeyaml中使用破折号来解析字段名称?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有yaml文件的片段:

I have fragment of yaml file:

field-name: my/data

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

but I can't create pojo with method name setField-name

有什么方法可以解析此类Yaml文件?

Is there any way to parse such yaml file?

推荐答案

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

You can pass a custom PropertyUtils to handle such cases

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);

这篇关于如何在snakeyaml中使用破折号来解析字段名称?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-04 11:18