[英]How can I solve the incompatible types (not convertible) while using the moddelmapper with a typemap
我正在嘗試將我的實體映射到我的DTO。 對於我的知識,我正在嘗試不同的方法。 我成功地使用了帶有隱式映射的映射,也使用了帶有configure方法的PropertyMap時的顯式映射。
現在我正在嘗試使用TypeMap進行顯式映射。 最后一個我無法上班。
與Modelmapper的入門一起,我在這個線程中使用了答案作為示例, 如何在Java 8和ModelMapper中使用顯式映射?
static ResponseB convertBEntityToDtoExplicitTypeMap(ModelB modelB){
ModelMapper modelMapper = new ModelMapper();
TypeMap<ModelB, ResponseB> typeMap = modelMapper.createTypeMap(ModelB.class, ResponseB.class);
typeMap.addMappings(mapping -> {
mapping.map(modelB.getId(), ResponseB::setId);
mapping.map(modelB.getBankaccountName(), ResponseB::setB);
mapping.map(modelB.isActive(), ResponseB::setActive);
});
return modelMapper.map(modelB, ResponseB.class);
}
上面的塊是我的代碼示例,不起作用。
我怎么能讓這個例子與TypeMap一起工作?
通過不斷的嘗試,我自己想出來了。
我不得不使用class而不是mapping.map中的對象
static ResponseB convertBEntityToDtoExplicitTypeMap(ModelB modelB){
ModelMapper modelMapper = new ModelMapper();
TypeMap<ModelB, ResponseB> typeMap = modelMapper.createTypeMap(ModelB.class, ResponseB.class);
typeMap.addMappings(mapping -> {
mapping.map(ModelB::getId, ResponseB::setId);
mapping.map(ModelB::getBankaccountName, ResponseB::setB);
mapping.map(ModelB::isActive, ResponseB::setActive);
});
return modelMapper.map(modelB, ResponseB.class);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.