为了账号安全,请及时绑定邮箱和手机立即绑定

为什么模型映射器地图集合具有合并样式?

为什么模型映射器地图集合具有合并样式?

绝地无双 2022-08-17 10:57:53
在我的应用程序中,我使用 ModelMapper 库将数据传输对象映射到实体。一个实体有一个包含其他实体的集合 ()。用户应该能够更改集合内容。Libraryjava.util.SetBook在这种情况下,将使用包含要存储在集合中的实体的标识符的数据传输对象。UpdateDTOBook后端使用 将 映射到实体。UpdateDTOLibraryModelMapper现在假设用户从 的集合中删除了一个实体。现在包含所有实体的列表,其中没有用户删除的实体。BookLibraryUpdateDTOBook我希望集合缺少用户在映射到实体时删除的实体。但与我的预期不同,返回的实体仍包含所有实体。BookModelMapperUpdateDTOLibraryLibraryBook为什么?我已将“问题”固定在[0]中的这些行中。CollectionConverter[0] https://github.com/modelmapper/modelmapper/blob/master/core/src/main/java/org/modelmapper/internal/converter/CollectionConverter.java#L62-L63
查看完整描述

2 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

的存储库包含有关同一问题的问题 [0],对当前实现如何工作的解释,以及如果源大小小于目标大小,则代码将删除项目。ModelMapperModelMapper

[0] https://github.com/modelmapper/modelmapper/issues/423


查看完整回答
反对 回复 2022-08-17
?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

默认情况下,合并列表是正确的,但您可以将其关闭:

ModelMapper mapper = new ModelMapper();
mapper.getConfiguration().setCollectionsMergeEnabled(false);

请参见:http://modelmapper.org/user-manual/configuration/


查看完整回答
反对 回复 2022-08-17
  • 2 回答
  • 0 关注
  • 146 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号