ModelMapper,对象在界面后面

时间:2018-11-26 10:58:23

标签: java modelmapper

例如,我在同一接口后面都有Entity和DTO类型:

public class CompanyDto implements Company {
    private String test;
    List<Project> projects;
}

public class CompanyEntity implements Company {
    private String test;
    private List<Project> projects;
}

public interface Company {
    String getTest();
    List<Project> getProjects();
}

public interface Project {
    String getFoo();
}

当我仅使用默认的转换方式时,不会转换项目列表。因为它们在界面后面,所以当我不将它们放在界面后面时,它就可以工作。

所以我认为我需要创建一个这样的自定义转换器:

    Converter<List<CompanyEntity>, List<CompanyDto>> converter = new Converter<List<CompanyEntity>, List<CompanyDto>>() {
        public List<CompanyDto> convert(MappingContext<List<CompanyEntity>, List<CompanyDto>> context) {
// CONVERT
        }
    };

但是我被困在这里,因为目的地在上下文中始终为null。 还有没有其他方法可以只将CompanyEntity指定给CompanyDto一次,以便即使它们在列表中也可以正常工作?

0 个答案:

没有答案