前文:

hibernate带给我们的O/RMapping思想是很正确的,即从面相对象的角度来设计工程中的实体对象,建立pojo,然后在编写hbm.xml映射文件来生成数据表。但是在实际开发中,往往我们会首先从数据库的设计角度出发来实现我们预期的项目。所以,这里详述从数据库表到实体类的生成。

数据库:MySQL 5.1

MyEclipse版本:8.0M1

Hibernate版本:3.2

首先,我在数据库中建立了如下E-R关系:

学生与班级1对多,学生与课程多对多(生成的中间表为:stu_course),学生与身份证:1对1,学生引用身份证主键作为外键(unique)。

生成的表结构:

准备工作已经就绪,下面,我们开始进行反向工程。

按照下图所示,打开MyEclipse Database Explore视图

在空白区点击右键,新建一个数据库对象。

点击Add Jars,加入数据库的jar文件。

填写Connection Url: jdbc:mysql://localhost:3306/hibernatetab2pojo

用户名和密码:root

Driver name:  com.mysql.jdbc.Driver

填写完毕之后,可以点击Test Driver,如果成功,那么接着下一步。

转回到Java视图,在项目上点击右键,选择MyEclipse-->add Hibernate Capabilities

然后下一步选中一个目录存放自动生成hibernate.cfg.xml文件,一般毫无例外的放在src根目录下,下一步选中我们第一步建立的那个数据库对象,然后下一步选中一个目录存放自动生成的HibernateSessionFactory工具类,这个hibernateSessionFactory工具类就是一个获取Session的单例,还有一些其它关闭session之类的方法。
最后,也是最关键的一步,生成实体类。

转换到MyEclipse Database Explorer视图,打开我们的数据库:hibernatetab2pojo,展开表,选中所有表:

然后,点击右键,选择Hibernate Reverse Engineering。。。

选中:Create POJO<>。。。,选中Create a Hibernate。。。,选中Update Hibernate。。。。。,接着下一步。


Id Generator:选中native(在我设计的表中,id是自增的,如果想尝试其它的朋友可自行测试)

选择:Hibernate types

其它能打勾的都打勾。

下一步,直接点击finish即可以生成实体类和相应的hbm.xml文件。并且hibernate.cgf.xml也会配置好。

MyEclipse从数据库反向生成实体类之Hibernate方式 反向工程的更多相关文章

  1. J2EE进阶(十五)MyEclipse反向工程实现从数据库反向生成实体类之Hibernate方式

    J2EE进阶(十五)MyEclipse反向工程实现从数据库反向生成实体类之Hibernate方式   反向工程又称逆向工程.   开发项目涉及到的表太多,一个一个的写JAVA实体类很是费事.MyEcl ...

  2. MyEclipse从数据库反向生成实体类通过Hibernate的方式----mysql数据库实例

    1.我们通过DB与数据库建立连接 2.建立web工程,构建Hibernate框架 3.通过table生成实体类

  3. MyEclipse从数据库表反向生成实体类之Hibernate方式(反向工程)

    一.打开Myeclipse Database Explorer 二.新建[New..] 三.选择数据库,添加驱动 四.测试连接 五.选中数据库中的表单击右键选择[Hibernate Rever..] ...

  4. MyEclipse数据库反向生成实体类

    MyEclipse数据库反向生成实体类 “计应134(实验班) 凌豪” 当我们在开发项目涉及到的表太多时,一个一个的写JAVA实体类很是费事.然而强大的MyEclipse为我们提供简便的方法:数据库反 ...

  5. Eclipse实现数据库反向生成实体类(pojo)-------(插件安装和实现步骤的说明)

    一.插件安装 1.下载插件: http://jaist.dl.sourceforge.net/sourceforge/jboss/HibernateTools-3.2.4.Beta1-R2008103 ...

  6. 使用MyEclipse生成实体类和Hibernate映射文件

    1.打开MyEclipse DataBase Explorer. 如上图,点击图中2便可切换到MyEclipse DataBase Explorer,若没有该图标,则点击图中1,便可选择MyEclip ...

  7. 使用T4为数据库自动生成实体类

    T4 (Text Template Transformation Toolkit) 是一个基于模板的代码生成器.使用T4你可以通过写一些ASP.NET-like模板,来生成C#, T-SQL, XML ...

  8. 自定义tt文本模板实现MySql指数据库中生成实体类

    自定义tt文本模板实现MySql指数据库中生成实体类 1.在项目中依次点击“添加”/“新建项”,选择“文本模板”,输入名称后点击添加. 2.在Base.tt中添加如下代码. <#@ templa ...

  9. MyEclipse 从数据库反向生成Hibernate实体类

    第一个大步骤 window-->open Perspective-->MyEclipse Java Persistence 进行了上面的 操作后会出现一个视图DB Brower:MyEcl ...

随机推荐

  1. YUI Compressor for Sublime text2

    YUI Compressor 是一个用来压缩 JS 和 CSS 文件的工具,采用Java开发. 最近压缩文件,常使用在线压缩的方式来压缩文件,一来多有不便,二来如果没有网络,只能搁置了.本文来描述如何 ...

  2. Html 字体大小单位 px em pt

    网页上定义字体大小有常见三种单位,px.em.pt px px是pixel缩写,是基于像素的单位.在浏览网页过程中,屏幕上的文字.图片等会随屏幕的分辨率变化而变化,一个100px宽度大小的图片,在80 ...

  3. junit批量测试

    引入一种“测试套件”的概念: package test; import org.junit.Test; public class Test1 { private int value = 1; publ ...

  4. com组件远程桌面rdp模块的调用

    rdp(remote desktop protocol)是一个多通道的协议,包括客户端视音传输.文件传输和通讯端口转向等等功能,通过压缩处理的数据网络传输也是相当快.我们在windows操作系统下面, ...

  5. HTML标签简明学习一

    !-- ... -- html注释 浏览器不对其中的内容解析,可以用来调试及书写释意 <!-- 动不动就被注释 --> !DOCTYPE 声明文件类型 一般大写,必须位于文档首行,浏览器根 ...

  6. atitit.团队建设总结o6o fix

    atitit.团队建设o6o fix #----- 无限放大梦想 2 要有自己的方向...主动添加自己的东东.. 3 有几个tech site,能晓得最新的的知识.. 3 有问题多交流, 3 失败的造 ...

  7. js/jq宽高的理解与运用

    document:1. 与client相关的宽高document.body.clientWidthdocument.body.clientHeightdocument.body.clientLeftd ...

  8. PHP类与面向对象(二)

    构造函数和析构函数 构造函数PHP 5 允行开发者在一个类中定义一个方法作为构造函数.具有构造函数的类会在每次创建新对象时先调用此方法,所以非常适合在使用对象之前做一些初始化工作.如果子类中定义了构造 ...

  9. 给同为.NET开发者普及一点Oracle数据库经验

    前段时间,因为要给自己开发的搜易站内搜索引擎增加Oracle数据库的支持,所以学习了下Oracle的基础知识,发现使用方式跟MYSQL,MSSQL等数据库的思维有很大的不同,总结一下几点不同,希望给初 ...

  10. angular post表单

    参数文章:http://angularjs.cn/A0qF angularjs中Post使用的是json的交互方法,一般服务器还没达到这个阶段,我们可以用回传统的&参数的方法: var myA ...