ModelMapper如何在不覆盖属性的情况下将DTO映射到域模型

时间:2018-07-17 18:08:56

标签: spring dto modelmapper

我的问题很简单,但直到现在我仍未找到该怎么办? 提供以下课程

public class DTOStudent{
private id;
private name;
private address;
}


public class Student{
private id;
private name;
private address;
}

使用ModelMapper我必须将源DTOStudent映射到目标Student 但在相同情况下,而无需修改address类中的Student属性。

我正在使用modelMapper.getConfiguration().setMatchingStrategy(MatchingStrategies.STRICT);

1 个答案:

答案 0 :(得分:0)

请尝试skipping properties

在Java 6/7中

modelMapper.addMappings(new PropertyMap<DTOStudent, Student>() {
    skip().setAddress(null);
});

在Java 8中

modelMapper.typeMap(DTOStudent.class, Student.class)
    .addMappings(mapper -> mapper.skip(Student::setAddress));