49

生成されたマッパー実装にSpringサービスクラスを挿入する必要があるため、それを介して使用できます

   @Mapping(target="x", expression="java(myservice.findById(id))")"

これは Mapstruct-1.0 に適用できますか?

4

5 に答える 5

28

Spring をコンポーネント モデルとして宣言し、次のタイプへの参照を追加すると、可能になるはずですmyservice

@Mapper(componentModel="spring", uses=MyService.class)
public interface MyMapper { ... }

このメカニズムは、生成されたコードによって呼び出される他のマッピング メソッドへのアクセスを提供することを目的としていますが、その方法でもそれらを式で使用できるはずです。サービス参照で生成されたフィールドの正しい名前を使用していることを確認してください。

于 2016-08-09T06:43:48.630 に答える