2012-01-10 59 views
5

我想写一个代码生成器做任何两个类之间的映射使用Eclipse。这个想法是提供一个向导,用户可以选择其属性需要映射的两个类。然后显示所有可能的匹配项,如果用户没问题,那么创建一个ClassMapper类,我们将只有一个方法图来执行Class1.setXXX(Class2.getXXX());Eclipse代码生成器生成映射器类

任何关于我们如何做到这一点的指针?

感谢

+0

您确定像Dozer(http://dozer.sourceforge.net/)这样的bean映射器框架不适合您吗? – Daff 2012-01-10 05:34:11

+0

有趣..我打算写一个swing程序来做这件事..因为我没有找到任何eclipse插件。男人..你必须设置这个的次数得到那..那么多打字..但停下来,因为这是不值得的麻烦..让我知道,如果你找到一个.. – sethu 2012-01-10 06:16:39

+0

打瞌睡似乎做我们的事情两者都需要..但是它是从一个类到另一个类的静态映射。如果你需要在多个类之间映射变量,那么你需要编写/生成代码 – sethu 2012-01-10 06:20:02

回答

2

这就是你要做的提供类似的功能推土机,但静态代码有这个优势,它是速度更快,它仅包含代码的逻辑,它是更容易找到现场使用通过IDE中的调用层次结构。

通常Eclipse插件将是最好的启动方式,因为您只能投影GUI并且显示是由Eclipse自己完成的,而且您还可以访问其强大的工具以使用Java代码。

然而,我认为最糟糕的部分是配置之一。推土机有它的原始映射器(在原始和本地java类型之间转换的原始方式;)它处理标准类型之间的大多数典型转换,但是有必要对其进行配置。例如,表示布尔值的字符串可以是't'和'f',或'true'和'false'或'1'和'0',或来自其他语言的单词。日期可以有各种格式等。所以你需要在这个插件中配置各种映射器,可以通过定义自己的代码片段来处理特定的转换。

但是,如果你这样做,你将不胜感激。 我最近在寻找的东西,这将做更多,我的意思是它可以创建映射和Dto的代码将匹配,可能性合并类层次设计,当对象的子类型由各种类表示,以平单班,更好的JSON运输,但是,没有结果。