为什么ModelMapper地图集合是合并样式的?

问题描述 投票:0回答:1

在我的应用程序中,我使用ModelMapper库将数据传输对象映射到实体。

一个实体Library有一个集合(java.util.Set)包含其他实体Book。用户应该能够更改集合内容。

在这种情况下,使用数据传输对象UpdateDTO,其包含要存储在集合中的实体Book的标识符。

后端使用UpdateDTOLibrary映射到实体ModelMapper

现在假设用户从Book的集合中删除实体LibraryUpdateDTO现在包含Book的所有实体的列表,而没有用户删除的实体。

BookModelMapper映射到实体UpdateDTO时,我希望该集合缺少用户删除的实体Library。但与我的期望不同,实体返回Library仍然包含所有Book实体。

这是为什么?我已经把CollectionConverter [0]中的'问题'归结为这些线。

[0] https://github.com/modelmapper/modelmapper/blob/master/core/src/main/java/org/modelmapper/internal/converter/CollectionConverter.java#L62-L63

java modelmapper
1个回答
1
投票

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

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

© www.soinside.com 2019 - 2024. All rights reserved.