eclipse下通过hibernate tools实现hibernate反向工程.docx
《eclipse下通过hibernate tools实现hibernate反向工程.docx》由会员分享,可在线阅读,更多相关《eclipse下通过hibernate tools实现hibernate反向工程.docx(19页珍藏版)》请在冰豆网上搜索。
![eclipse下通过hibernate tools实现hibernate反向工程.docx](https://file1.bdocx.com/fileroot1/2023-1/9/92cbf97c-e756-4aed-9d04-87232ab3d7c6/92cbf97c-e756-4aed-9d04-87232ab3d7c61.gif)
eclipse下通过hibernatetools实现hibernate反向工程
eclipse下通过hibernatetools实现hibernate反向工程
分类:
eclipse2012-06-2617:
25 2451人阅读 评论(0) 收藏 举报
hibernateeclipsetoolsfileencodingclass
最近搭建新的项目,需要使用eclipse下通过hibernatetools实现hibernate反向工程生成实体类和对应的hbm.xml文件,现在记录下方便以后回忆:
1、首先要下载安装hibernatetools;
2、按照这篇文章操作:
3、注意:
补充下上面的文章,在使用过程中会出现类似如下提示:
org.hibernate.cfg.JDBCBinderException:
Duplicateclassname'com.dqgbcd.sczzks.entity.AllFileGroups'generatedfor'org.hibernate.mapping.Table(SYS._ALL_FILE_GROUPS)'.Samenamewheregeneratedfor'org.hibernate.mapping.Table(SYS._ALL_FILE_GROUPS)'
Duplicateclassname'com.dqgbcd.sczzks.entity.AllFileGroups'generatedfor'org.hibernate.mapping.Table(SYS._ALL_FILE_GROUPS)'.Samenamewheregeneratedfor'org.hibernate.mapping.Table(SYS._ALL_FILE_GROUPS)'
原因:
这是因为数据库中还有许多系统表,在对系统表进行逆向工程时出错。
解决方案:
建立hibernate.reveng.xml作逆向配置。
设定只有dbo下的schema被用做逆向。
参考配置代码:
xmlversion="1.0"encoding="UTF-8"?
>
DOCTYPEhibernate-reverse-engineeringSYSTEM">
......
注意:
match-schema就是用户名,match-name就是表名,注意大小写的区分
1、首先,要去Hibernate的网站下载这个工具包。
一个大约14M的ZIP压缩文件。
2、解压缩下载好的文件,释放出features和plugins这两个文件夹和其中的内容。
完成后将这两个文件夹复制到Eclipse的目录下(这两个文件夹在Eclipse中是默认存在的,直接复制就行了)。
3、到这步为止HibernateTools的安装就算结束了,下面开始配置和具体使用。
一开始选择工程下的SRC目录,然后右键New->Other->Hibernate->HibernateConfigurationFile(cfg.xml),在弹出的窗口中选择Next,进入到下面的选项中。
注意,这个地方有几项是一定要填写的。
他们分别是Databasedialect(数据库方言)、Driverclass(数据库驱动)、ConnectionURL(链接字符串)以及Username和Password(访问数据库的用户名和密码)。
上图图中使用的是MySQL5数据库的配置,vane是我机器中已经创建好的数据库。
使用其他数据库的时候会略有不同。
填好之后选择Finish。
4、选择Eclipse的下拉菜单Window->ShowView->Other->Hibernate->HibernateConfigurations,现在就可以查看Hibernate的配置窗口了。
在窗口中单击右键AddConfiguration,出现EditConfiguration窗口。
建一个HibernateConsoleConfiguration,这里需要给Configuration起个名字,Project项目中选择当前工程,然后DatasbaseConnection选择连接的数据库,单击OK。
如图:
如果成功的话,会在Hibernate的控制台看到数据库中的Table列表,如图:
6.新建hibernate.reveng.xml
new->others->hibernate->HibernateReverseEngineeringFile到了以下画面:
选择consoleconfiguration,点击refresh,选中需要Reverse的Table,点击include。
最后finish就好了。
生成的XML如下:
Xml代码
1.
xmlversion="1.0"encoding="UTF-8"?
>
2.
DOCTYPEhibernate-reverse-engineeringPUBLIC"-//Hibernate/HibernateReverseEngineeringDTD3.0//EN"">
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
Eclipse用HibernateTools生成.hbmcfg.xml等文件
分类:
JAVA 编程日记 Eclipse hibernate2011-11-2813:
48 3202人阅读 评论
(1) 收藏 举报
hibernatetoolseclipsemysql数据库encoding
建立好数据库后,点击一个键,代码就生成了,这实在是份十分惬意的事情,前面有介绍HibernateTools就可以生成代码,那么我们怎么利用它来生成代码呢。
下面就把详细步骤贴出来,同样,有图有真相。
Step1:
安装好HibernateTools,建立一个Dynamicwebproject,笔者工程名为“HibernateTest”
Step2:
笔记以Mysql为示例,所以安装一个Mysql,建立相应测试数据库及表,下图为笔者的数据库及表
Step3:
将MySql的Jdbc驱动拷贝至lib目录,笔者的为mysql-connector-java-5.1.14-bin.jar,可以去Mysql官网下载
Step4:
利用HibernateTools生成hibernate.cfg.xml文件,如下图:
点击后可以对hibernate.cfg.xml命令,不管它直接默认转到下一步的配置界面,笔者的配置如下图:
点击完成后,它将生成如下xml的配置文件
1
xmlversion="1.0" encoding="UTF-8"?
>
DOCTYPEhibernate-configurationPUBLIC
"-//Hibernate/HibernateConfigurationDTD3.0//EN"
"
com.mysql.jdbc.Driver
111
jdbc:
mysql:
//localhost:
3306/javadb
root
org.hibernate.dialect.MySQLDialect
Step5:
HibernateConsole配置
a.右键工程,点击Runas-RunConfigurations进入如下界面并选择HibernateConsoleConfiguration:
b.新建一个Configure名为HibernateConsole,名字可随个人爱好来命名
笔者各标签页配置如下:
Step6:
利用HibernatTools生成reveng.xml
a.工程中右键如下图,添加reveng.xml
b.没啥说的命个名,选择放置位置
c.按照箭头方向进行操作,选择console的配置,再点击刷新,就能看到数据库中的表,将它们Include进来,如下图
d:
最终效果
Step7:
这是最后一步了,激动人心的时刻就要到了
a.在Eclipse的工具栏中将HibernateCodeGenerate显示出来,显示出来后点击HibernateCodeGenerateConfigurations,如下图:
b.Main标签页中选择控制台,选择文件输出路径,包名,reveng.xml文件
c.Exporters标签页,选择要生成的文件,记得勾上HebernatexmlMappings及HebernatexmlConfiguration,它们将自动生成映射文件并注册,
配置好后,点击Run即可生成代码。
大功告成,最后的生成的代码结构如下图:
配置hibernate反向工程配置文件
建一个HibernateConsoleConfiguration,这里需要给Configuration起个名字,Project项目中选择当前工程,然后DatasbaseConnection选择连接的数据库,单击OK。
如图:
如果成功的话,会在Hibernate的控制台看到数据库中的Table列表,如图:
6.新建hibernate.reveng.xml
new->others->hibernate->HibernateReverseEngineeringFile到了以下画面:
选择consoleconfiguration,点击refresh,选中需要Reverse的Table,点击include。
最后finish就好了。
生成的XML如下:
Xml代码
1.
xmlversion="1.0"encoding="UTF-8"?
>
2.
DOCTYPEhibernate-reverse-engineeringPUBLIC"-//Hibernate/HibernateReverseEngineeringDTD3.0//EN"">
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.