2016-08-17 15 views
0

リストを異なる属性名でマップする必要があります。mapstructリスト<Object1>リスト<Object2>属性が異なる

例:私はObject1Listを簡素化するために取得する場所

public class Object1 { 
    private String name; 

    //getters and setters 
} 


public class Object2 { 
    private String customerName; 

    //getters and setters 
} 
@Mapping(source="object1List.name" target="object2List.customerName" 
List<Object2> toObject2(final List<Object1> object1List) 

私は書いていません。 (私はメソッドの別のクラスでそれを取得します)

私はこれを試みてきましたが、mapstructはobject1Listが不明なプロパティであると不平を言っています。私はこれを行う方法がありますか?ヘルプは高く評価されます。

答えて

0

あなたはObject1からObject2へのマッピングのための別の方法を宣言する必要があります:

@Mapping(source="name" target="customerName") 
Object object1ToObject2(Object1 object1) 

その後(@Mapping注釈なし)あなたのリストのマッピング方法を宣言し、その生成された実装は、マッピングするための上記のそのメソッドを呼び出します個々のリスト要素。

+0

返信いただきありがとうございます。出来た。 – Srinivas

関連する問題