工欲善其事,必先利其器。我们可以使用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. 剑指offer--50.滑动窗口的最大值

    时间限制:1秒 空间限制:32768K 热度指数:157641 题目描述 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值.例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的 ...

  2. Iphone 消息通知(APNS)的3种方式 -- C# 和 nodejs

    发送 APNS 使用 p12 文件(C#) public static bool PushWithP12(string apnToken, string message) { _log.DebugFo ...

  3. sql基础语法复习

    约定:数据库名:test:表名:tb1,tb2,tb3…: 对象:数据库:database 表:table 列:column 索引:index 视图:view 存储过程:procedure 一.数据结 ...

  4. nginx and node.js配合使用 helloworld

    nginx是最好的反向代理服务器. Node.js是... 好吧 ,不介绍了,猛击这里 现在小介绍下怎么用nginx和node.js配合使用. 先写个helloworld.js var http =  ...

  5. mstsc Windows局域网内远程桌面连接

    1.检查被连接计算机的远程桌面连接功能是否开启  控制面板->系统和安全->系统->远程设置->远程桌面->勾选"仅允许运行使用网络级别身份验证的远程桌面的计算 ...

  6. import 路径

    例子: import sys sys.path.append("/home/wang/Downloads/caffe-master/python") import caffe

  7. 【Python】Python点滴(一)——pip工具使用

    首先我们来看一条命令:pip install uwsgi 这条命令按照操作名称,可以分为三个部分:pip.install和uwsgi.接下来,按照这样三个部分进行分析.   pip pip类似于Rea ...

  8. 从VS2010跳跃到VS2017

    Visual Studio 配色方案 https://studiostyl.es/ C#语言新特性 C#4.0:http://www.cnblogs.com/yangqi/archive/2010/0 ...

  9. 使用Linq动态排序

    Linq排序很方便,如果能动态创建Expression再排序就更方便了. 正序还是倒序排列 var order = typeof(Enumerable).GetMember(direction == ...

  10. CODEVS3013 单词背诵 【Hash】【MAP】

    CODEVS3013 单词背诵 题目描述 Description 灵梦有n个单词想要背,但她想通过一篇文章中的一段来记住这些单词. 文章由m个单词构成,她想在文章中找出连续的一段,其中包含最多的她想要 ...