是否可以為嵌套映射器指定限定符,而不必為特定類型的 bean 的每個實例指定限定符?一些代碼來說明我的觀點。我有一個父對象,例如:public class ParentDTO { ChildDTO childA; ChildDTO childB; ChildDTO childC; // getters, setters, etc.}我有一個包含多個映射的 ChildMapper:@Mapperpublic interface ChildMapper { @Named("MinimalChildMapper") @Mapping(target = "someAttribute", ignore = true) ChildDTO toMinimalChildDTO(Child child); @Named("ChildMapper") ChildDTO toChildDTO(Child child);}我知道我可以像這樣為每個孩子指定哪個孩子映射器:@Mapper(uses = ChildMapper.class)public interface ParentMapper { @Mapping(target = "childA", qualifiedByName = "MinimalChildMapping") @Mapping(target = "childB", qualifiedByName = "MinimalChildMapping") @Mapping(target = "childC", qualifiedByName = "MinimalChildMapping") ParentDTO toParentDTO(Parent parent);}我想弄清楚的是,是否有某種方法可以使用類型( ChildDTO) 的每個 qualifiedByName 中指示的映射,而不必為類型的每個實例(childA、childB、childC)指定它。這可能嗎?
1 回答

Cats萌萌
TA貢獻1805條經(jīng)驗 獲得超9個贊
目前這是不可能的。
但是,您可以做的是擁有 2 ChildMapper
(s)。這樣你就可以在你的ParentMapper
. 另一種選擇是在您的文件中定義最小映射,ParentMapper
而不是重用ChildMapper
.
添加回答
舉報
0/150
提交
取消