ModelMapper使用
ModelMapper modelMapper = new ModelMapper();
modelMapper.addMappings(new PropertyMap<AnEntity, ADTO>() {
protected void configure() {
//属性名不一样,自己设置对应关系
//source生成目标类,destination数据来源类,这两个单词可以理解成两个指针,代指类
map().setText(source.getDescription());
//不映射某些属性
//属性是对象的可以如下
skip().setDtoOnlyProperty(null);
//属性非对象的
skip(destination.getID());//可以对source中属性设置,也可以对destination的属性设置
}
});
ADTO adto = modelMapper.map(entity, ADTO.class);
modelMapper.typeMap(Opportunity.class,ProspectOut.class)
.addMapping(Opportunity::getPhone,ProspectOut::setMobilePhone)
.addMapping(Opportunity::getLevel,ProspectOut::setOppLevel)
.addMapping(Opportunity::getStyleId,ProspectOut::setCarStyleId)
.addMapping(opportunity->opportunity.getContact().getContactTwo(),ProspectOut::setOfficePhone)
.addMapping(Opportunity::getStatus,ProspectOut::setPotentialCustomerStatus);