以下是我的上下文:我使用byteBuddy動態生成一個類,該對象基於外部配置將對象轉換爲另一個對象。我遇到了一些問題,我想找到一個替代方案,就是我發現MapStruct的方式。MapStruct:豐富映射註釋以定義自定義映射器
所以我試圖構建簡單的映射器,我想知道是否有可能定製註釋以添加轉換函數。比如我想有:
@Mapping(
source = "mySourceField",
sourceType = "String",
target = "myTargetField",
targetType = "Integer",
transformation = {"toInteger", "toSquare"}
),
而且所用的mapper實現我會是這樣的:
public TypeDest toSiteCatTag(TypeSrc obj) {
if (obj == null) {
return null;
}
TypeDest objDest = new TypeDest();
objDest.myTargetField = Formatter.toSquare(
Formatter.toInteger(obj.mySourceField));
return objDest;
}
如果有人能幫助我實現我將不勝感激,它會救我很多時間。
在此先感謝。
在編譯期間你有'TypeDest'和'TypeSrc'還是他們是動態類?你是否在運行時生成它們? – Filip