当前位置: 首页 > 工具软件 > MiddlegenIDE > 使用案例 >

用MiddleGenIDE工具生成hibernate的POJO(根据数据表生成POJO类)

钱凌
2023-12-01

推荐:MiddlegenIDE插件,   是一个Eclipse   插件. 
    用它可以直接连接到数据库,   根据表按照一定的HIBERNATE规则作出BEAN和对应的XML ,用完后你可以手动删除它加载的JAR包和XML文件! 

    今天开始试着使用MiddleGenIDE工具了,真的挺方便的,节省了很多时间,它的安装方法是下载一个middlegenide_1.3.3.zip文件,然后把它解压到eclipse的根目录下面,解压到dropins里面也行,再重启一下eclipse就能使用了,安装很方便,然后新建一个MiddleGenIDETest的项目,在项目上右击-新建-other找到middlegen,文件名选为默认,点击下一步,填写JDBC jar,URI,USER,PASSWORD等,然后点击Load Table,按shift键全选,填写包名com.demo.hibernate.beans,导出文件选hibernate,点击finish,弹出导出窗口,分别单击每个表,单击Generate按钮,然后关闭就完成了,每个表的.hbm.xml文件就算是生成好了。 

下载: 
middlegenide_1.3.3.zip (7.7 MB) http://sourceforge.net/projects/middlegen/files/

MiddlegenIDE的使用 

最近有朋友发信,说MiddlegenIDE的主页出了点状况,登陆上去显示的内容莫名其妙,给新手使用MiddlegenIDE带来了困难。本座去看了一下,果然是莫名其妙得厉害。下面总结一个MiddlegenIDE的使用教程吧。 

MiddleGen for Hibernate加上Hibernate_Extension工具包,其实就是用来方便我们从先有的数据库导出表结构,生成对应的hbm、cfg文件与POJO类代码。MiddleGenIDE则是MiddleGen的Eclipse插件。整套东西已经有很久没有更新过了。所以虽然本座现在用的eclipse版本3.1.x也能与这个插件正常配合,但是它没有提供在线update的功能。需要你先下载middlegenide,安装插件之后重启Eclipse。如果新开启的eclipse没有变化,估计你得用"- clean"参数再重启一下,或者去删除configuration文件夹下面对应的文件。 

OK,下面讲讲怎么去用。首先当然要搭建一个环境(我现在把MySQL更新到了5.0,Hibernate和当时一样是2.1),然后我们建一个表,装一点数据。MySQL下面建表的脚本如下: 

DROP TABLE IF EXISTS `test`.`t_user`;
CREATE TABLE  `test`.`t_user` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(255) default NULL,
PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk;

有了表之后,建立一个Java工程。然后在Src文件夹上面右键,选择“New-Other”

然后会弹出Middelgen Biuld File的选项。因为MiddleGen是一个使用Ant编译文件来调出IDE的包,所以这个插件实际上就是方便我们用完型填空的方式来编写这个Biuld File而已。

点击后出现下面的界面,对应的内容一目了然,按照自己的需要填写即可。

下面这张图是填好后的样子。和本座一样没有使用Hibernate 3的朋友,注意在画了红圈的Option选项中把hibernate的版本调低。不然生产的配置文件,会有一个非常诡异的"xml parser无法解析dtd"的错误。

填好所有的东西就点击Next进入MiddleGen界面,几乎不用改任何东西直接点击Generate就能得到配置文件和POJO类了。

另外,如果你需要在MiddleGen中生成的POJO直接带Xdoclet的标记的话,需要在找到它自带的模板文件: 
1            
eclipse\plugins\org.ultimania.middlegenide_1.3.2\resource\template\build-hibernate.xml.vm

然后把下面这行生成xdoclet tag的值改成true: 1            
<property name="gen.xdoclet-tag"   value="true">

 

 

 类似资料: