Mapstruct <抽象主类型> / <子类型>到<抽象主类型Dto> / <子类型>映射

时间:2019-11-29 11:18:23

标签: java mapstruct

我们要映射

abstract Person
    PersonRole1 extends Person
    PersonRole2 extends Person

abstract PersonDto
   PersonDtoRoleX extends PersonDto
   PersonDtoRoleY extends PersonDto
   PersonDtoRoleZ extends PersonDto

映射器将获取“人员类型”作为参数(PersonRole1PersonRole2)。根据该参数的属性,它应该确定要映射到哪个Dto类型(PersonDtoRoleXPersonDtoRoleYPersonDtoRoleZ中的一个)。

构造mapstruct映射器定义的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

MapStruct并非旨在解决您遇到的所有业务问题,因此您可能需要在一种方法中实现自己的逻辑。 MapStruct将从其生成的代码中调用该方法。您可能想玩@TargetTypeSee here for an example

您可以在自己的逻辑中调用MapStruct生成的方法。