当把Typesafe配置映射到bean类(ConfigBeanFactory)时,是否有办法标记拼写错误的属性?

问题描述 投票:0回答:0

我们的应用程序正在使用一个reference.conf来为我们的一个POJO提供默认值,该POJO携带配置信息。

class Person {
  String first;
  String last;
    // corresponding setters / getters not shown
}

reference.conf有默认值。

Person {
 first:  "joe"
 last:  "shmoe"
}

所以如果你的application.conf有:

Person {
 first:  "mike"
}

所以当你这样做的时候

  public static Person getInstance(Config config) {
    return ConfigBeanFactory.create(config.getConfig("Person"), Person.class);
  }

你就会得到一个名字为firstlast == mikeshmoe的人。

现在...说我有一些用户没有得到足够的睡眠,其中一个用户这样错误地配置了他们的应用程序(拼错了 "first").我现在的做法是,从这个配置中加载的Pojo默认firstlast==joeshmoe.没有任何关于拼错的警告("frist")。

Person {
 frist:  "mike"
}

我现在的做法是,从这个配置中加载的Pojo默认firstlast == joeshmoe.没有任何关于拼写错误的警告("frist")。

我可以写代码对我的Bean类进行反思,看看用户提供的哪些属性与可用的setter不一致,如果发现任何 "错误 "的属性,就会引发错误。但似乎有人(甚至可能是Typesafe配置基础库)一定已经有了这个功能。

任何指向一个好的现有方法来做这个非常感激。

javabeans typesafe-config hocon
© www.soinside.com 2019 - 2024. All rights reserved.