当我尝试在目的地上设置 null 时,我遇到了 Orika 的问题。
现在,当源有值且目标为空时,我的实现工作得很好。 它也适用于源和目的地都有一个值。问题是当我读取的值 从源为空,而在目的地则不为空。
我发现在1.4.0版本上可以使用函数ClassMapBuilder.mapNulls(true|false)或ClassMapBuilder.mapNullsInReverse(true|false)来解决这个问题。
不幸的是,上面的代码似乎没有解决我的问题,因此目标字段始终保持不变,尽管它应该设置为 null(根据源代码)。
以下是我尝试过的不同实现。
MapperFactory myfact = new DefaultMapperFactory.Builder().build();
ClassMapBuilder<E, D> mapBuilder = factory.classMap(dest, source).mapNulls(true);
MapperFactory myfact = new DefaultMapperFactory.Builder().mapNulls(true).build();
ClassMapBuilder<E, D> mapBuilder = factory.classMap(dest, source);
有什么建议吗?
最佳答案
这最终是 Orika 软件的问题。 该错误已在 1.4.2 版本中修复
关于java - 当为 null 时,Orika 不会在目的地上设置值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15570955/