我有许多类需要映射到另一个类似的Object DTO。此类之间的区别是属性名称不同,并且在某些情况下,我更改了属性的类型(我暂时认为这不是问题)。 我不知道如何使用mapstruct进行此映射。 请看下面的示例:
经典CarDTO
public class CarDTO{
private String registrationNumber;
private List<ColorsDTO> colorsDTO;
private int numberOfDoors;
private List<EngineTypesDTO> engineTypesDTO;
}
Classe ColoursDTO
public class ColorsDTO{
private List<ReferenceColorsDTO> referenceColorsDTO;
private int colorsId;
}
Classe EngineTypesDTO
public class EngineTypesDTO{
private int hp;
private String engineName;
}
我认为您了解情况。这是一个示例,我有MUCH类来做映射属性名称。 通常,我使用mapstruct的这种实现方式(正如我们在下面的实际情况中看到的那样),但是现在,有了这个问题,我就不能这样做。
public interface CoverageMapper {
@Mappings({
@Mapping(source="provisaoReembolso", target = "provisionReimbursement"),
@Mapping(source="reembolso", target = "reimbursement"),
@Mapping(source="codigo", target = "code"),
@Mapping(source="desviosProvisaoDTOs.desviosProvisaoDTO", target = "deviationProvisionDTO") //ARRAY
})
CoverageDTO coberturaDTOToCoverageDTO(CoberturaDTO coberturaDTO);
}
对不起,我的英语。
谢谢你们。