假设我有一个源对象,包含两个属性,a和b,如下所示:
public class Source {
String a, b;
}
和一个具有一个属性c的目标对象:
public class Target {
String c;
}
我想定义一个映射:
我认为将mapNulls设置为false的映射器是可能的:
factory.registerClassMap(factory.classMap(Source.class, Target.class).field("a", "c").field("b", "c").mapNulls(false));
但是,当我将属性a设置为非空值并将属性b保留为null时,映射会导致目标对象的c设置为null。
我是否误解了mapNulls的目的?
答案 0 :(得分:1)
这是因为mapNulls
在最后一个字段设置了属性。
尝试在两个字段设置。
您也可以实现ConfigurableMapper
。