【发布时间】:2018-09-15 15:21:00
【问题描述】:
class Identifier {
private long id;
private String type;
private List<Status> statuses;
}
class Customer {
private Identifier identifier;
}
class CustomerProfile {
private Customer customer;
}
class CustomerIdentifierDO {
private long id;
}
class CustomeDO {
private CustomerIdentiferDO custID;
}
class CustomerProfileDO {
private String category;
private List<Status> custStatuses;
private CustomeDO customer;
}
@Mapper
public interface CustomerProfileMapper {
CustomerProfile toCustomerProfile(CustomerProfileDO profileDO) ;
Customer toCustomer(CustomerDO customerDO);
Identifier toIdentifier(CustomerIdentifierDO identifierDO);
}
在此之前一切正常。现在我想将CustomerProfileDO 类的custStatuses、category 映射到statuses 和type 类的Identifier。我不知道如何将CustomerProfileDO 对象提供给toIdentifier 映射方法,以便我可以在其中包含映射本身。我试过了
@Mappings({
@Mapping(target = "customer.identifier.type", source = "category")
})
CustomerProfile toCustomerProfile(CustomerProfileDO profileDO) ;
但是这个嵌套映射覆盖了下面方法的所有映射配置。那不应该发生。
toIdentifer(CustomerIdentifierDO identifierDO)
有什么方法可以实现吗?
【问题讨论】:
标签: java mapstruct object-object-mapping