映射对象容器另一个对象的列表[Mapstruct]

时间:2018-07-19 17:13:20

标签: java list mapping mapstruct

我有许多类需要映射到另一个类似的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);

}

对不起,我的英语。

谢谢你们。

0 个答案:

没有答案