[英]Mapstruct: Map a list inside an object to a list of objects
鑒於:
public class Car {
private String plate;
private List<String> tires;
}
public class TirePlate {
private String plate;
private String tire;
}
我想將所有Car.tires映射到單獨的TirePlates。 我知道我可以將List<String>
為List<tires>
映射器,但是如果這樣做,那我會丟掉盤子。
我怎么把盤子放在那里?
你可以做的是創造名單,將獲得一個自定義映射器plate
,然后你會從一個自定義的方法映射plate
和tire
成TirePlate
。
例如:
@Mapper
public interface TireMapper {
CarDto map(Car car);
default List<TirePlate> map(List<String> tires, String plate) {
List<TirePlate> tirePlates = new ArrayList<>(tires.size());
for(String tire: tires) {
tirePlates.add(map(tire, plate));
}
return tirePlates;
}
TirePlate map(String tire, String plate);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.