工欲善其事,必先利其器。我们可以使用IDE来根据数据库中的表反向生成实体类和映射文件,虽然这些东西手写也并不是难度很大,但是如果存在大量的简单工作需要我们做,也会显得很麻烦。

写在前面

我们反向生成的一个前提就是需要先存在数据库,所以我们需要先将数据库创建好

MyEclipse篇

不得不说MyEclipse真的是JavaEE开发的首选,使用MyEclipse简直不要太方便,它内置了许多我们需要的插件,不需要我们再安装了。

创建MyEclipse和数据库连接

现将Myeclipse的Database Explorer视图打开

我们需要现将Myeclipse与我们的数据库建立连接,右键new一个连接吧

填写四大参数和我们的驱动的位置

添加HIbernate的支持

这种方式只能添加MyEclipse自带的支持,我们想用自己的Hibernate也可以,就是不用进行这一步了。需要自己手工编写Hibernate配置文件和sessionFactory。

final完成即可。数据库算是建立了连接,接下来我们需要在项目中建立两个包,用来存放SessionFactory和实体bean,与spring整合之后就不用这个SessionFactory了,但这里我们先不用spring

在项目右键选择MyEclipse->project facets->install Hibernate Facet

选择一个MyEclipse自带的Hibernate版本,只能选择自带的?

Next ,选择hibernate.cfg.cml文件和SessionFactory所在包

Next,选择我们刚刚创建的连接

final,完成我们的hibernate主配置文件和sessionFactory的创建,并加入Hibernate的jar包

对于自动生成的东西,我们还是要记得检查一下,不要少什么东西,比如我的connection.url就有点不对,没有指点具体的数据库

重头戏在这里,反向生成实体类和xx.hbm.xml文件

再次切换到Database Explorer视图,在我们的连接下选择一个数据库中需要反向生成实体类的table

填写一些信息,比如说JavaBean要生成的位置

还可以设置生成的实体类名和主键生成策略

final,来我们的项目中看看吧,Dept实体类和Dept.hbm.xml文件就生成了

最后,我还是要说,对于自动生成的东西也需要简单浏览一下,不要少什么或有什么错误

Eclipse篇

安装插件

MyEclipse很强大很好用,但是我们都知道MyEclipse是一款收费的产品。我们的Eclipse也可以完成反向生成工作,但需要我们先下载一个JBoss Tools插件,我们有找到离线版本,Hibernate官网也推荐使用Eclipse在线下载,我就是在线下载的

选择其中的HIbernate Tools即可,也可以在Eclipse Marketplaces中查询安装

安装过后,就开始我们反向工作吧

建立数据库连接

Eclipse也是需要先建立数据库的连接的,进入到DateBase Development->new connection profile

填写配置信息和加载数据库驱动jar

反向生成代码

切换到Hibernate视图,add Configuration 我们刚创建的连接

接下来打开Hibernate Code Generation

这个工具在我们的工具条上就出现了。接下来我们在项目中建立一个包来存放实体类和*.hbm.xml文件

新建一个Configuration

配置一下项目的src和实体类所在的包

Run,我们的项目中就自动生成实体类和*.hbm.xml文件了

注意:Eclipse并不会自动为我们加入jar包,所以我们需要手工加入Hibernate的jar和数据库驱动jar。而且Eclipse也没有为我们生成SessionFactory,这都需要我们手工完成。

写在最后,一定要检查自动生成的东西,一定要检查自动生成的东西,一定要检查自动生成的东西,重要的事情说三遍

反向生成hibernate实体类和映射文件的更多相关文章

  1. Eclipse从数据库逆向生成Hibernate实体类和映射文件(Eclipse插件系列之HibernateTools)

    ♣下载安装Eclipse插件(HibernateTools) ♣Eclipse连接数据库(Mysql5.7) ♣新建hibernate.properties和hibernate.cfg.xml文件 ♣ ...

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

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

  3. Intellij Idea反向生成Hibernate实体类

    每次根据数据库的表反向生成实体类老不记得步骤...脑子不够用,这里特意记录一下.碰到的问题也及时更新到这里来. 1. 工程添加Hibernate支持 两种方式: 第一种:工程上右键选择 "A ...

  4. IDEA 自动生成Hibernate实体类和Mapping文件

    一.新建工程Demo(如果选的时候勾选了hibernate,IDEA会自动下载Hibernate包,不需要手动导入) 二.导入相关包 Mysql && Hibernate 三.添加Hi ...

  5. SQLserver数据库反编译生成Hibernate实体类和映射文件

    一.建立项目和sqlserver数据库 eclipse,我使用的版本是neon3 二.Data Source Explorer 选择OK 在data source Explorer的Database ...

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

    背景:工作中使用Hibernate进行持久化的开发工作,所以有必要详细了解这方面的知识. ps:这里有个问题就是刷新表的时候速度太慢了.还不如自己手动去创建.如果表太多倒是可以采取批量生成的策略. 在 ...

  7. eclipse从数据库逆向生成Hibernate实体类

    做项目必然要先进行数据库表设计,然后根据数据库设计建立实体类(VO),这是理所当然的,但是到公司里做项目后,让我认识到,没有说既进行完数据库设计后还要再“自己”建立一变VO.意思是,在项目设计时,要么 ...

  8. [转]eclipse借助hibernate tool从数据库逆向生成Hibernate实体类

    如何从数据库逆向生成Hibernate实体类呢??? 1. 首先,要在eclipse中采用自带的数据库管理器(Data Management),连通你的数据库: 然后选择数据库,这里用的oracle, ...

  9. Eclipse使用hibernate插件反向生成实体类和映射文件

    一般dao层的开发是这样的,先进行数据库的设计,什么E-R图之类的那些,然后选择一款数据库产品,建好表.最后反向生成Java实体和映射文件,这样可以保证一致性和便捷性. 如果用myeclipse,逆向 ...

随机推荐

  1. New Concept English Two 33 94

    $课文92  自找麻烦 1016. It must have been about two in the morning when I returned home. 我回到家时,肯定已是凌晨两点左右了 ...

  2. New Concept English three(21)

    27W 59 Boxing matches were very popular in England two hundred years ago. In those days, boxers foug ...

  3. Win10启动盘制作工具

    Rufus https://rufus.akeo.ie/ http://www.iplaysoft.com/windows-10-udisk-install.html

  4. Linux:expand命令详解

    expand 用于将文件的制表符[TAB]转换为空格,将结果显示到标准输出设备 语法 expand(选项)(file) 选项 -t<数字>:指定制表符所代表的空白字符的个数,而不使用默认的 ...

  5. jauery-layer弹出框的使用

    一布局: <div id="detailLayer"> <div class="box-header"> <div class=& ...

  6. [置顶] JVM层对jar包字节码加密

    github https://github.com/sea-boat/ByteCodeEncrypt 需求 拿到的需求是要对某特定的jar包实现加密保护,jar包需要提供给外部使用,但核心逻辑部分需要 ...

  7. Uncaught TypeError: jQuery.i18n.browserLang is not a function

    /********************************************************************* * Uncaught TypeError: jQuery. ...

  8. flexcan controller register

    /********************************************************************* * flexcan controller register ...

  9. 【ci框架学习】控制器-视图

    基础的东西就不写了,网上大把的教程,可以慢慢磨.这里说些要注意的要点. 1.所有控制器都必须间接或者直接继承控制器基类 CI_Controller. 2.文件命名尽量小写,因为ci使用的是pathin ...

  10. JSON和JSONP简单总结

    jsonp和json的区别,原理,在jquery中的使用 http://www.cnblogs.com/dowinning/archive/2012/04/19/json-jsonp-jquery.h ...