2015-02-11 104 views
0

我有一个基类,我想要转换。除了包名以外,我想要转换的所有类型都是相同的。它们是在我无法控制的规格中创建的。是否有创建一个通用转换器的方法,所以我不重复相同的get和set调用一遍又一遍?我的显然比下面的更复杂,但我强调的一点是,原始名称和最终类型的字段名称不同。如何将一种类型转换为与包名相同的多种类型?

原文:

com.mycompany.base.ConvertMe; 

class ConvertMe { 
    private String name; 
    private String colour; 
    private String fruit; 

    //getters and setters... 
} 

需求映射到:

com.mycompany.convertedA; 

class Result { 
    private String firstName; 
    private String favouriteColour; 
    private String favouriteFruit; 

    //getters and setters... 
} 

而且也映射到:

com.mycompany.convertedB; 

class Result { 
    private String firstName; 
    private String favouriteColour; 
    private String favouriteFruit; 

    //getters and setters... 
} 
+0

http://stackoverflow.com/questions/7567409/create-a-common-converter-for-objects-from-different-packages的可能的复制? – Rob 2015-02-11 15:00:41

+0

[java对象映射的任何工具的可能的重复?](http://stackoverflow.com/questions/1432764/any-tool-for-java-object-to-object-mapping) – 2015-02-11 15:01:03

回答

2

Dozer是你在找什么。对于这些情况,它非常灵活和方便,可以通过注释,xml映射支持映射。

Orika可能是另一种选择。虽然推土机是强大和最简单的之一。

对于更详细的比较,看看这个post

相关问题