java hibernate生成实体类_(转) Eclipse通过HibernateTools实现逆向生成Hibernate实体类...

背景:工作中使用Hibernate进行持久化的开发工作,所以有必要详细了解这方面的知识。

ps:这里有个问题就是刷新表的时候速度太慢了。还不如自己手动去创建。如果表太多倒是可以采取批量生成的策略。

在项目开发时,要么先完成数据库表的设计,再逆向生成实体类或者根据需求分析建立实体类,有正向生成数据库表。没有人会浪费大量的时间在进行完任意一方时自己匹配建立另一方设计,这样做还可能导致两边映射不一致,对开发和维护都不利。废话不多说,现在开始实现由数据库逆向生成Hibernate实体类的方法。

1 Eclipse配置Hibernate环境

(2)解压后将features和plugins这两个文件夹拷贝到我们事先建好的文件夹eclipse-jee-luna-R\MyPlugins\HibernateTools\下面。如下图所示

64_1.png

(3)在eclipse目录新建目录links(如果已经存在就不需要在创建了),在该目录下新建文件hibernate.link,内容为:path=D:/eclipse-jee-luna-R/MyPlugins/Hibernatetools

64_2.png

(4)重新启动Eclipse,在文件(file)–>新建(new)–>其它(other)中如果看到hibernate的配置项就证明已经安装成功,如下图:

64_3.png

2 创建项目生成映射文件和持久化类

(1)新建一个项目hibernateTools,并将数据库驱动拷贝到lib目录下,项目的目录结构如下:

64_4.png

ps:这里我根据需要使用oracle的jar包。这里可以随意建一个工程,或者使用系统工程,只要jar包存在即可。jar包主要是用来配置数据库相关驱动,连接数据库用

2.1 打开Hibernate Perspective视图层

在Eclipse中打开“Hibernate Perspective“。

选择“Windows” >> “Open Perspective” >> “Others…” , 选择 “Hibernate“。

此时在工作窗口会看到一个Hibernate Configurations窗口。

2.2 新建Hibernate Configuration 配置

1、在Hibernate Configurations窗口中, 右键,选 “Add Configuration…”,弹出对话框 Edit Configuration窗口。如下图所示

2、在 “Project”区域, 单击 “Browse..” 选择你自己的项目。(根据具体情况作出判断)

3、在 “Database Connection” 区域, 单击 “New..”创建你自己的数据库设定。

ps:这一步比较重要。用来配置数据库驱动,数据库连接串。后面的4 5 6步都是做这个操作的

4d23f4e37ae3f8dd592ca5582b584d94.png

4、弹出Connection Profile中选Oracle ,并填写“Name”后,Next。Name为数据库节点的名称,含有数据源的信息

da15e0a9483e690466a2330dd9acbf54.png

5、在弹出对话框中,选Driver,没有的话要新加,此处新加Driver。

5b4e27c38eb88004b66bc8b63303ad5e.png

6、弹出对话框New Driver Definition。用来配置数据库驱动

ps:在Name/Type中中选一个driver templates,如果出现“Unable to locate JAR/zip in file system as specified by the driver definition: ojdbc14.jar.”

就要在“JAR List”选项卡中删除原有的驱动文件,重新加一下就好了。

6676145b035338b5ced900843271a7b9.png

ps:这里的Driver name 自己命名,后面可以直接选取

删除驱动文件重新添加,此处添加的是Maven仓库中的jar包

ae63159bde6a3aa60236cb7830bf8ebd.png

完成后点击OK

实际操作:进行数据库驱动的相关配置ps:此处要配置前边的jar包路径。自己建立一个jdbc的驱动器并命名。

f188f5bdd7387a12da3fc7e22ee1a283.png

数据库驱动配置好以后,填写数据库的相关连接,可以点Test Connection测试是否可以连接上。

42274f987126e1ee98037b7f7689f744.png

连接上如图

95b16f65bb8f62c4989bcc6ede024945.png

7、Configuration file配置

ps:下面的Database connections选项选择第6步中配置好的连接名称。如下所示

15132d2b35e368c33f3490fe5b05fd5a.png

点击“Setup”弹出“Setup configuration file”对话框,如果不存在.dfg.xml文件,可以新建

a53fd7d0148966a9323446936cb86a17.png

上图点击“Create New…”后,弹出新建cfg.xml文件对话框

创建在项目目录下的main/java/resources下,

我的是在“maven-hibernate-demo/src/main/resources”

可以点击next配置更具体的设置,此处我们直接Finsh。即不再配置hibernate.cfg.xml中的信息

330ff6b1e632e4888e2e95c887077883.png

返回前一界面后,OK。记住,此处的“Hibernate Version”选项一定要选对版本,否则反向工程不会成功。

ps:在sts中没有Hibernate Version选项的配置

51282bcb478793a58ce8ab51ac08192e.png

查看Hibernate Configurations视图。

ps:点击新建的配置,在Database目录下可以看到我们连接的数据库和相关的表信息,这样就表示配置成功。数据库刷新的过程会有点长,如下图所示

78c49daa98ecc1ef604094ef73fccbb6.png

2.3 查看src/main/resources目录下的刚建好的hibernate.cfg.xml文件

ps:这里可以自己写,也可以直接finish跳过

10b77b81885fe2bee01ca32cef7f3c5d.png

/p>

"-//Hibernate/Hibernate Configuration DTD 3.0//EN"

"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

oracle.jdbc.OracleDriver

password

jdbc:oracle:thin:@yourdatabaseip:gzip

username

org.hibernate.dialect.Oracle10gDialect

0cbef53c97c74c801605d4173362c43e.png

2.4 生成Hibernate代码

#

在“Hibernate Perspective”视图中, 点击 “Hibernate Code Generation Configuration”

f9f20f64d6d10a159685dc5345487f3c.png

在生成代码框中,新建configuration,并填写Main选项卡和Exporters选项卡,

Main中需要填写输出路径等,填完的如下

console configuration选择前边刚配置完的Hibernate Configuration,前边的名字是“hibernate”

ps:这就是前面对数据源相关的配置

Output directory选择输出路径

Reverse enginner from JDBC Connection勾选

Package填写包名

reveng.xml填写创建hibernate.reveng.xml的位置,没有则新建。

3a4ab16d1eff3e4e8e63c02f86c17edd.png

console configuration:选择在第二点中我们创建的数据库连接。

output directory:配置执行后输出的目录,生成hbm、PO类等。

package:包名,这里请输入PO类存放的路径。

reveng.xml:生成mapping和PO类的重要配置文件

ps:在创建reveng.xml时候,要点击next,配置需要进行映射的数据库表。

4b61bbff46dec5e9f32b99d9fa1af1c3.png

c89cc57e399382ec93f7ad547fe7b684.png

ps:此处刷新有点缓慢,选择要进行映射的数据表即可。

cdf98f2b43b0a6de4dfcb69b93abd977.png

在Exporters选择相应要生成的代码

可以生成Model , mapping file (hbm) , DAO, annotation code 等等。

3e3703f917aed42e0f5ac9fe1196495c.png

点Run生成代码

生成的代码结构如下

ca6275e6a8205f5332cdd0429ae23b9b.png

https://www.cnblogs.com/lixuwu/category/853850.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值