起因

之前写过一个MapStruct集成及使用的文章,里面介绍了 MapStruct 的基本用法和集成方式。

有朋友问到里边出现的@IterableMapping(qualifiedByName = "useMe")@Named(value = "useMe")起到了什么作用。

介绍

@IterableMapping(qualifiedByName = "useMe")指定集合映射时用哪个命名方法处理集合中的每个元素

@Named("useMe")给某个映射方法命名,便于引用

通俗一点的讲就是:当把 List 转成 List 时,对 List 中的每个 E 元素,使用 @Named("useMe") 的 toDto(E entity) 方法进行转换。

为什么需要这么做?

没毛用,就是为了说明一下可以这么用:)把这俩注解都去掉,基本一样代码还是可以正常运行