始终将null对象映射为null

Vje*_*tje 4 dozer

我正在寻找一种方法将每个null对象映射到null而不是"org.dozer.MappingException: Source object must not be null"错误.我不想枚举每个类并说null映射为null,我想将其指定为一般规则.

Dmi*_*din 6

这是一个通用异常,表示不应将null对象作为顶级bean传递给mapper.map(src,dest)方法.所以在调用Dozer之前进行防范检查应该有所帮助.

if (src == null) return null;
return dozer.map(src, dest);
Run Code Online (Sandbox Code Playgroud)

此外,默认情况下启用"map-null"策略,但它仅适用于要映射的bean内部的元素(不是顶级).因此,'user.id'如果Dozer 为空值,Dozer将正确映射.在下一个版本中,有可能在全局级别应用'map-null'而不指定每个类.但是,这只会有助于禁用空映射,因为它默认是启用的.