Orika 必须 public setter

Orika must have public setter

我正在尝试 Orika,我想知道您是否必须有 public setter 才能使映射工作?

我在没有 setter 的情况下尝试过,它不起作用,也没有试图明确告诉 byDefault() :

factory.classMap(Page.class, PageResource.class).byDefault().register();

对此有任何反馈吗?

在默认的 Orika 配置中,映射对象必须遵循 getter/setter 的 JavaBean 规范。另一种可能的方法是,有 public 个字段。

要更改此行为,您可以编写自己的 PropertyResolverStrategy 并进行配置。

DefaultMapperFactory build = new DefaultMapperFactory.Builder()
            .propertyResolverStrategy(new MyCustomPropertyResolvingStrategy())
            .build();

有关此主题的更多信息,请参阅 documentation 或 orika 代码。