[英]Mapstruct java.util.Stack converting
所以,我有三個 Java 類。
class A {
private Long id;
//getter, setter, etc
}
class B {
private Stack<A> myField;
//getter, setter, etc
}
class C {
private Stack<Long> myField;
}
我想將 class B 的對象轉換為 class C 的對象,兩個堆棧的順序應該相同。
我知道如何通過額外的結構、循環等手動完成。但是通過 Mapstruct 有什么優雅的方法嗎?
所以,經過幾次嘗試,我現在發現的最優雅的方法是下一個:
@Mapper
public interface CMapper {
C BtoC(B b);
default Long myFieldConverter(A myField) {
return myField.getId();
}
}
我手動調用 getId() 但至少我不遍歷集合。
我試圖用注釋做一些事情,比如
@Mapping(target = "", source = "id")
Long myFieldConverter(A myField);
但還沒有找到要放入目標的內容,因為字段不是任何 bean,而是 Long 沒有任何字段、setter 等。而且我沒有找到一種方法在“目標”中放置對構造函數的引用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.