我是MapStruct的新手,我试图映射目标类中的对象列表,其中as源具有包括其他字符串变量在内的单个值。自定义实现也没有运气。请执行的任何建议
public class Source {
String var1;
String var2;
String resourceCd1;
String resourceCd2;
String resourceCd3;
String resourceCd4;
String resourceCd5;
String resourceDesc1;
String resourceDesc2;
String resourceDesc3;
String resourceDesc4;
String resourceDesc5;
String var3;
String var4;
}
public class Target {
List<Resource> resources;
}
public class Resource {
String code;
String description;
}
List<Resource> resources = new ArrayList<>();
Resource resource1 = new Resource();
resource1.code = soruce.resourceCd1;
resource1.description = soruce.resourceDesc1;
resources.add(resource1);
Resource resource2 = new Resource();
resource2.code = soruce.resourceCd2;
resource2.description = soruce.resourceDesc2;
resources.add(resource2);
Resource resource3 = new Resource();
resource3.code = soruce.resourceCd3;
resource3.description = soruce.resourceDesc3;
resources.add(resource3);
Resource resource4 = new Resource();
resource4.code = soruce.resourceCd4;
resource4.description = soruce.resourceDesc4;
resources.add(resource4);
Resource resource5 = new Resource();
resource5.code = soruce.resourceCd5;
resource5.description = soruce.resourceDesc5;
resources.add(resource5);
不可能使用开箱即用的MapStruct。MapStruct支持bean到bean、可迭代到可迭代、映射到映射。
目前正在构建:bean-to-map。准备就绪后,可以通过流/收集器将映射转换为列表。
假设我有这样的映射: 现在,我需要将子列表映射到子列表,但它们都有相同的父对象。我希望这样做: 但不管用,有机会做吗?
给定: 我想把所有的车都标出来。将轮胎分为单独的轮胎板。我知道我可以做一个
假设我有以下课程:
下面是我的DTO。 源DTO 目标DTO
我有Object1和Object2。现在,我想映射对象3,属性来自1 比方说,我有两个目标: 现在,有了这些,我想把它映射进去 哪里,first_name 现在,我的问题是,怎么做? 然而,目前,我正在这样做 但是,在这里,我必须在addressToView()中手动编写映射。 因此,有没有办法避免这种情况? 或者,处理此类情况的首选方式是什么?
我有2个微服务:我们称它们为A和B。 由B处理的实体(其中引用了a的实体)被实现为简单的长id(例如groupId) 我想要实现的是使用mapstruct填充B(由A持有)的缺失组数据。到目前为止,我尝试使用@AfterMapping函数向a请求缺失的数据。我的映射器是: 给我映射功能的实现接口是: 生成的代码的问题在于,将实体列表映射到DTO列表的函数对每个实体使用EntityToToTo,导致