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

将两个具有不同对象类型的列表映射到具有另一种对象类型的第三个列表

将两个具有不同对象类型的列表映射到具有另一种对象类型的第三个列表

慕码人8056858 2023-04-13 10:48:15
尝试使用 mapstruct 将两个列表映射到另一个列表时遇到问题。结构如下:public class classA{    List<ObjectA> list;}public class classB{    List<ObjectB> list;}public class classC{    List<ObjectC> list;}我需要将两个列表从 classC 和 classB 映射到 classA 中的列表(从 objectB 和 objectC 到 objectA 的映射已经完成)。我尝试了以下内容:@Mappings({    @Mapping(target="list", source="obj1.list"),    @Mapping(target="list", source="obj2.list")})classA map(classB obj1, classC obj2);//the other mappers from objectC and objectB to objectA这给了我编译错误。有人可以帮我映射这个列表吗?我听说过一个名为 exception 的注释参数,但无法用它解决我的问题。
查看完整描述

1 回答

?
慕神8447489

TA贡献1780条经验 获得超1个赞

这不能通过 mapstruct 来完成。合并 2 个列表总是涉及业务逻辑。所以需要b自己写方法实现。我最近在 MapStruct 网页上写了一个常见问题解答项目。这适用于预先存在的列表@MappingTarget。但类似的推理适用于将 2 个源列表合并到一个目标中。


查看完整回答
反对 回复 2023-04-13
  • 1 回答
  • 0 关注
  • 133 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信