【发布时间】:2021-10-25 12:06:13
【问题描述】:
我有一个映射器抽象类,其中我有一个从 dto 映射实体的函数。我想从这个抽象类中使用三种不同的方法,每个方法负责映射不同的东西。每个函数都用@Named 和上面的主映射函数注释,我放了@BeanMapping。如果我选择这三个函数中的一个并将其命名为 @BeanMapiing(qualifiedByName = "x") 一切正常,但我想通过将它们的名称作为这样的数组来使用它们 @BeanMapping(qualifiedByName = {"x","y","z"}) 没有一个用于实现方法。有什么办法可以使这项工作?我的代码如下所示:
public abstract class EntityMapper{
@BeanMapping(qualifiedByName = {"x","y","z"})
public abstract Entity dtoToEntity(Dto dto);
@Named("x")
@AfterMapping
public void methodX(Dto dto){
//implementation
}
@Named("y")
@AfterMapping
public void methodY(Dto dto){
//implementation
}
@Named("z")
@AfterMapping
public void methodZ(Dto dto){
//implementation
}
}
【问题讨论】: