eclipse mysql生成实体类_eclipse从数据库逆向生成实体类

本文介绍了在Eclipse中如何通过逆向工程从MySQL数据库生成Hibernate实体类。首先需要配置数据库连接,然后添加Hibernate配置,接着配置代码生成选项,最后运行生成实体类。过程中可能遇到的问题包括缺乏数据库插件、主键问题和生成注解实体对象的设置。解决这些问题后,可以顺利生成对应的实体类和配置文件。

在项目设计时,要么根据需求分析建立实体类,由正向生成数据库表;要么就先进行数据库表设计,再逆向生成实体类。

本文eclipse从数据库逆向生成Hibernate实体类来举例:

在Myeclipse中,正逆向工程操作比较简单,而如果是eclipse的话,会比较麻烦,因为必须要先配置下Hibernate环境(例如安装hibernate-tools插件)。

逆向步骤如下:

1.首先,要在eclipse中采用自带的数据库管理器(Data Management),连通你的数据库:

首先,要在eclipse中采用自带的数据库管理器(Data Management),连通你的数据库:

b30d1032acf3c19bc14738d42626192b.gif

b5bf6a3be87ef32fa95ca272228f94d7.gif

7d3da4e62e5b3e266cda1cc7f3e12868.gif

2.然后选择数据库,这里用的oracle,然后给个名字,如MyOracle。

684f40b5a3fe35cc683b7ea3db2d3839.gif

3.点击下图中按钮,新建一个数据库驱动的配置。

4e1b189b47afee628d129d3cddb3c487.gif

选择数据库版本,这里是oracle 10g版本,可以为该配置另起个名字。

12502d35de8164c2000c73351e09a491.gif

然后选择相应数据库版本的jar包。

4c28f00e5b67b3f0294153bc9e1f2bd7.gif

下面就是依据自身情况填写数据库连接配置了。

af0f86c970c2787a6f086a610cc948fd.gif

接下来,完善Properties下的General选项卡内容,同样是连接数据库的信息,配置完后点击Test Connection按钮测试是否能连通数据库。

e013786576253b4823f766a157916f4c.gif

测试连接成功,如图:

950a8ef388d722647a77286a29c863e4.png

然后点击Next,再确认无误后,单击Finish。

4.添加hibernate配置:

打开window>show view>other,选择hibernate菜单下的hibernate config,如下图,

e6f169377b27617f5253aab54e3aa772.png

然后在console选项卡里出现了hibernate configuration选项卡,如下图:

0db66d564cf984d882c3f1a0386dc1ea.png

5.如果从未配置过hibernate,那么这里就是空,空白处右击,选择add一个即可,如果配置过了,就会显示配置文件。下面看下如何add一个新的配置。右击空白处,如下图:

75deeba968782b83c555e597f197d908.png

选择add之后,出现如下图的界面:

e700b6257c6b0ef8d748cd7205a0e010.png

上面是Main选项卡的配置,重点是Database connection的配置,用的就是之前第2步配置的数据源。如果想要hibernate的配置文件,可以在Configuration file选项里,让eclipse生成新的配置文件,不生成也可以。

6.然后再如下图所示,配置Option选项卡的dialect,

93f3594a6d24c2cf58749902f0a436cd.png

最后点击OK,即可,就会生成一条新的hibernate config。

7.在工具栏添加hibernate相关的按钮:

3a366211ade554570d5f4ccdd32e6b91.png

进入后:

cc8210b7d7d385c758afd14e558155ce.png

勾选hibernate code generate,点击OK,会多了一个下图中的按钮:

a69b9c2eccc9fc2ef3cae9a73cf279ef.png

8.配置hibernate code generation:

选择上图中的Hibernate Code。。。选项,

c5097f40442f60c83aa37d8172ee8a32.png

只能上述方式填写,main选项卡,console configuration就是之前配置的hibernte config,reveng.xml的话得setup,create new,如下图:

d8091061c3c983e3a098fca6ae74d3b5.png

要选择xml文件的存放位置,之后点击next,而不是finish,会按照之前的hibernate config来找数据源,出现下图:

3284a51c285c67c2d009eb86bf6946a5.png

一开始左侧列表为空,需要点击refresh,然后选择数据库,选择表,include就可以了,这就是要生成的数据库表的实体类和配置文件。finish。

9.再配置,exporters选项卡:

7085eb4367c7b8444f89cec8488d039d.png

勾选生成哪些文件。

10.最后配置common选项卡,字符集:

b98fdcb198ec9d934c63cc7de1ec3627.png

点击run,出现了生成的文件:

b95cb32628bc7ffc8312ff865ad04ff7.png

要说明的一点是,如果要反向生成关联,比如one-to-many这些,那么底层的数据库建表的时候就得添加foregn key约束,否则生成的配置文件不会有关联的信息,只是分离的一张张表。

如果建表的时候有外键约束,最终的一对多关联就是双向的一对多关联。

可能出现的问题:

1.connection profile types只有两个选项,没有oracle和mysql等类型

848c40c3e911737c823ead6f651c51d4.png

原因:eclipse未安装数据库插件

解决方法:

菜单栏里选择 帮助->安装新软件

1c26207ae921686f96d3bde12b4538c1.png

4ccef711f9fa819dcfc7a6861a5c36f7.png

一路next就哦了,只是这个下载速度有点慢,得等很长时间。

2.多生成了一个classId的文件,例如要生成视图类Pat,总是生成一个Pat和PatId的class类,而且Pat中有PatId类的对象,PatId中却包含数据表的全部属性...

原因:

使用Hibernate工具会自动检测数据库的表中有没有主键(PRIMARY_KEY),当发现没有主键时就会自动给你多生成一个java文件,也就是两个文件。如果你的数据表有主键,就只会生成一个java文件,并且有的时候你在生成的时候有一个步骤需要选择的,否则也生成两个文件

解决方法:打开数据库工具,修改表结构,被ID字段设置为PRIMARY_KEY主键即可

e5ff44349a2127975c0e928087c520ca.png

3.要生出注解的实体对象怎么办

解决办法:勾上这三个选项就可以了

c12c39ee66a9854501a1f812c4828288.png

总结:

步骤大致是

1.配置data source

2.配置hibernate

3.配置hibernate code geration

4.run。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值