用MyEclipse自动生成hibernate映射文件和数据库的实体类

以前我都是创建完数据库后,然后手动在myeclipse中一一创建对应的实体类,不仅费时间,而且还有可能出现字段名,数据类型不匹配的情况(在使用框架查找的时候就知道这到底有多坑人了),所以就有了下边的快速生成实体类的方法:

1.myeclipse中:window--->show view--->DB Browser

   用MyEclipse自动生成hibernate映射文件和数据库的实体类

2.打开DB Browser:右键MyEclipse Derby--->New

用MyEclipse自动生成hibernate映射文件和数据库的实体类

DataBaseDriver对话框中依次选择:

Driver Template ——数据连接的类型;Driver Name ——连接的名称(自己定);Connection URL ——数据库连接字符串;User name —— 数据库连接用户名;Password —— 数据库连接密码 。然后在Driver JARs中添加数据库的驱动jar文件。

点击“Test Driver”按钮测试连接是否正常。选中Save Password可以保存密码。设置全部正确后,点“Finish”按钮。

用MyEclipse自动生成hibernate映射文件和数据库的实体类

数据库连接创建成功后可以在右侧DB Broswer窗口中看见新建的连接。

用MyEclipse自动生成hibernate映射文件和数据库的实体类

3.在项目中添加Hibernate支持:右击项目--->Configure Facets--->Install Hibernate Facet(我用的是myeclipse10 ,不是该版本的应该是在Myeclipse--->Add Hibernate Facet)


用MyEclipse自动生成hibernate映射文件和数据库的实体类

填写配置:

第一步:版本号,直接选择默认,然后next;

用MyEclipse自动生成hibernate映射文件和数据库的实体类

第二步:Hibernate的配置文件。

用MyEclipse自动生成hibernate映射文件和数据库的实体类

第三步,配置Hibernate的数据库连接。在DB Driver列表中选择刚刚创建的数据库连接。完成后点击finish 。

用MyEclipse自动生成hibernate映射文件和数据库的实体类

最后在项目中就可以看见以下两个文件:

用MyEclipse自动生成hibernate映射文件和数据库的实体类

4.将DB Browser窗口的已打开连接节点中选中用户创建的所有的表。然后点右键,选择Hibernate ReverseEngineering…,使用Hibernate反向工程。通过反向工程来帮助我们生产出和数据库表结构对应的Hibernate实体类和实体类映射文件(hbm.xml文件)。

用MyEclipse自动生成hibernate映射文件和数据库的实体类

第一步:就是配置数据表到实体类之间的映射。

Java src folder ——指定把反向工程生成的文件放入到那个项目中(这里要指向到src文件夹才可以)

Java package ——实体类和映射文件存放到哪个包当中。

Create POJO<>DB Table mapping information —— 是否生成对应的映射文件(*.hbm.xml文件)

Add Hibernate Mapping Annotations to POJO ——  使用注解配置实体类(注意!上述两者中选择一种即可,要么是实体类+.hbm.xml,实体类+注解)

Java Data Object (POJO <> DB Table) —— 是否生成实体类文件(注意!下面的Createabstract class不要选!因为实体类不需要抽象父类)

用MyEclipse自动生成hibernate映射文件和数据库的实体类

第二步:实体类及关联的细节定制。

Id Generator: 当前这张表中主键列的生成策略

用MyEclipse自动生成hibernate映射文件和数据库的实体类

第三步:关于实体的映射关系:

Generate support for ListedTable(fk)->UnlistedTable:确认是否生成当前这个实体类的多对一关联映射。

Generate support for UnlistedTable(fk)->ListedTable:确认是否生成当前这个实体类的一对多关联映射。

 

注意!如果数据库表之间没有添加外键约束,映射不会生成。

 

全部设置完成后,点击“Finish”按钮。需要的实体类,实体类映射文件,以及Hibernate配置文件中的映射添加就全部自动完成了。

用MyEclipse自动生成hibernate映射文件和数据库的实体类