2012-03-26 35 views
1

我有2類具有這種結構的另一個字段:引用在推土機自定義字段轉換器

class ClassA { 
    String typeA; 
    List<String> valuesA; 
    ... other fields go here 
} 

class ClassB { 
    String typeB; 
    List<String> valuesB; 
    ... other fields go here 
} 

我需要將valuesA映射到valuesB和在該字段映射定製coverter我需要訪問的typeA/TYPEB。

類似於:如果typeA是「type1」,則通過某種算法將valuesA映射到valuesB,如果typeA是「type2」,則通過不同算法將valuesA映射爲valuesB。

推土機可能嗎?

謝謝!

回答

1

我想通過使用Dozer的編程式(即Java)自定義轉換器是可能的。

請參閱documentation,特別是TestCustomConverter Java類的示例。

+0

謝謝你的回覆!但是,我不知道該怎麼做,因爲這意味着要爲整個classA,classB映射編寫一個自定義轉換器。我將能夠映射該字段,但是這會覆蓋其他字段的默認推土機映射器。所以我不知道如何從這個自定義轉換器調用基地推土轉換器來映射其他領域。 – 2012-03-26 10:06:53

+1

我不認爲你可以混合自定義轉換器和XML轉換器,因爲在Dozer配置中,你必須爲特定的類註冊一個映射器。也許你可以用一些繼承來解決這個問題? – 2012-03-26 10:14:28

+0

謝謝,但我無法改變這些類的結構 - 它們是從我不能改變的特定模式生成的。 – 2012-03-26 10:17:17

相關問題