myeclipse6.5下使用hibernate3.6进行逆向工程

来源:互联网 发布:2017年大数据市场规模 编辑:程序博客网 时间:2024/05/17 04:15

            说些题外话,昨晚和女友吵了一场大交,撇开客观因素,我占60%错,她占40%错。整晚差点眼光光,望天光,写点昨天的心得吧。有时发觉闲得太久,便会想得太多,想得太多,便会死得更快。最近想得太多,那应该是我最近太闲了。

            讲回主题了,大家知道myeclipse6.5下自带的hibernate版本最高为3.2,正常的使用情况下,你使用更高版本的hibernate,只要在项目内配置无误的情况下,对日常的开发是没有影响的。但系当你需要利用hibernate去进行逆向工程,去生成pojo的时候,你就会发现出问题了。当你在 myeclipse database explorer的视图下,已经在DB Broser里面正确的配置好了DB connection的时候。下一步你选择Hibernate Reverse Engineering的时候,你会发现在选择项目的时候,你会发现选择界面为空,你会发觉选择不了你正在使用的工程。情形如下图:



而正常情况下,在使用myeclipse6.5的自带的hibernate去进行逆向工程的时候,你会发觉一切正常,情形如下图:


       

          那么到底是什么原因导致了这两种情况的分别,我分析了一下,jar包应该是不会影响这个问题的,而hibernate的配置文件也是不会影响的,那剩下的应该是myeclipse6.5对项目的配置上做了手脚了,导致了这种差异,因为我们知道像myeclipse生成的项目的文件下,会有.project和.mymetadata等文件,而这些文件就是控制了我们的项目在myeclipse6.5中的各样属性。上网查了一下资料发觉思路是正确的。那么如何解决以上的问题呢?

          首先我们找一个使用myeclipse6.5自带的hibernate3.2的项目,在项目下,找到.project和.myhibernatedata这两个文件。

          第二步打开.project文件,找到关于hibernate的语句。  

<buildCommand><name>com.genuitec.eclipse.hibernate.HibernateBuilder</name><arguments></arguments></buildCommand>
以及
<nature>com.genuitec.eclipse.hibernate.hibernatenature</nature>
这两段语句复制到hibernate3.6中.project对应的位置。

          第三步将.myhibernatedata这个文件拷贝到我们使用hibernate3.6的项目的相同位置。

          至此,更改完成,我们看一下测试结果,发现我们使用hibernate3.6的项目也能和使用myeclipse6.5自带hibernate3.2的项目一样,正常的使用逆向工程去生成POJO类了。情形如下:



http://www.gdbaiyin.com/

原创粉丝点击