【发布时间】:2018-05-07 04:38:50
【问题描述】:
您好,我需要 mappig 变量来请求。我如何映射到列表中。 我的请求看起来像。
public class Request {
private String Id;
private List<Data> applicationData;
@Data
@NoArgsConstructor
@AllArgsConstructor
public static class Data {
private String data1;
private String data2;
private String data3;
}
}
还有我的映射器
@Mapper(componentModel = "spring")
public abstract class RequestMapper {
@Mapping(target = "Id", source = "data.Id")
@Mapping(target = "data.???.data1", source = "data.data1")
@Mapping(target = "data.???.data2", source = "data.data2")
@Mapping(target = "applicationData.???.data3", source = "data.data3")
public abstract Request map(Data variables);
}
【问题讨论】:
-
不清楚你需要什么。您能否编辑您的问题并显示您期望的结果,或者一些伪代码以及您希望您的代码做什么的解释。
-
我认为这个想法是创建一个单一的元素列表。尝试使用
expression。像@Mapping(target = "applicationData", expression = "java( Collections.singletonList(new ApplicationData(variables.data.data1, variables.data.data2, variables.data.data3) ))"这样的东西。类名可能应该用包完全限定。
标签: java spring mapping mapstruct