使用Hibernate Tools从数据库逆向生成Hibernate实体类
自动生成model.java、*.hbm.xml 甚至是dao.java、*.ddl、*.html等等。一般也就如下三种方式 1. MyEclipse 自带插件
2. jboss的 hibernate-tools插件(最为常用)
3. ant 脚本方式。 当然也有一些其他工具自动生成,比如 SSM 的 mybatis-Generator 自动生成dao、model、mapping 等等,
基于目前SSH 和 eclipse 选择第二种方式 hibernate-tools插件。网上看了一些资料大部分都是mysql和oracle驱动的, 由于目前项目是sqlserver,添加驱动的时候绕了半天弯子(没有找到公司sqlserver驱动),特此总结下。
一、集成Hibernate tools 网上资料挺多的,一般是离线、和在线,由于不是特别大,我选了在线安装
Help-->Eclipse Marketpalce...-->搜索JBoss tools->install
勾选Hibernate tools,点击next,进行安装。
注意版本,找自己eclipse版本对应的安装,我的是INDIGO
安装后,重启Eclipse。搞定。
启用Hibernate perspective: Windows->Perspective->Open Perspective->Other...->选择Hibernate
二、配置hibernate.cfg.xml
步骤
1 新建一个hibernate configuration(操作入口:项目 ---> 新建 ---> other ---> hibernate)
2 点击“next” 下一步 选择项目中路径,存放 hibernate.cfg.xml 目录。
3 点击“next“,填写相关信息。
4 点击“next” 注意hibernate版本,选择自己的项目。
5 点击“new”选择对应数据库
6 点击“next” ,(驱动自己下载的sqljdbc_6.2.2.0_chs.tar.gz)自己找到的可以忽略
7 如果出现如下错误,点击加号,选择自己本地的驱动
8 完成后点击“ok”,填写完数据库的相关连接后,可以点Test Connection测试是否可以连接上。
驱动不对
连接成功
9 选择steup 创建*.cfg.xml
10 可以点击next配置更具体的设置,此处我们直接Finsh
11 查看Hibernate Configurations视图
12 如果报错“database dialect”无效,请选择“Options”中对应server
最后查看下刚才建好的hibernate.cfg.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">net.sourceforge.jtds.jdbc.Driver</property>
<property name="hibernate.connection.password">33301</property>
<property name="hibernate.connection.url">jdbc:jtds:sqlserver://192.168.1.16:1433;DatabaseName=C33RM_BA</property>
<property name="hibernate.connection.username">user</property>
<property name="hibernate.dialect">SQL Server</property>
</session-factory>
</hibernate-configuration>
三、配置hibernate.reveng.xml
1 在“Hibernate Perspective”视图中, 点击 “Hibernate Code Generation Configuration”
2 填写对应信息
在生成代码框中,新建configuration,并填写Main选项卡和Exporters选项卡, Main中需要填写输出路径等,填完的如下 console configuration选择前边刚配置完的Hibernate Configuration,前边的名字是“hibernate” Output directory选择输出路径 Reverse enginner from JDBC Connection勾选 Package填写包名 reveng.xml填写创建hibernate.reveng.xml的位置,没有则新建。
3 选择Exporters 标签 选择需要生成哪些文件,这里选择 model.java 和 *.hbm.xml
4 最好是选择Common 选择一下编码格式
5 保存就好,点击关闭会提示保存。 至此准备工作做完。
6 双击打开创建好的hibernate.reveng.xml ,可以直接在Source中配置需要生成的表,也可以在 table Filters 中 include 数据库中表
7 见证奇迹的时候到了,保存后点击 上面 3 步骤中的 Run 生成如下代码
备注:
hibernate.reveng.xml 还可以修改数据库转换到model的字段类型(譬如数据库中值为int时,默认会转变为Integer)
修改talbe & colums 中选中字段设置hibernate type。
也可以配置类名(不设置的话,根据表名自动生成)
配置id生成方式(1.add primary key ,2 add generator(类型为assigned,如需要其它类型直接在文件中进行修改))
等等。。。。。
使用Hibernate Tools从数据库逆向生成Hibernate实体类的更多相关文章
- [转]eclipse借助hibernate tool从数据库逆向生成Hibernate实体类
如何从数据库逆向生成Hibernate实体类呢??? 1. 首先,要在eclipse中采用自带的数据库管理器(Data Management),连通你的数据库: 然后选择数据库,这里用的oracle, ...
- eclipse从数据库逆向生成Hibernate实体类
做项目必然要先进行数据库表设计,然后根据数据库设计建立实体类(VO),这是理所当然的,但是到公司里做项目后,让我认识到,没有说既进行完数据库设计后还要再“自己”建立一变VO.意思是,在项目设计时,要么 ...
- Eclipse中通过Hibernate Tools插件实现从数据库逆向生成Hibernate带注解的实体类
一.安装hibernate tools插件 1.在线安装 通过Eclipse的Help->Install New Software 在线安装插件,插件连接为: eclipse helios(3. ...
- 从postgres数据库逆向生成hibernate实体类
最近整理 一个项目,原先的项目是用的oracle,然而新的项目要用postgresql.将oracle数据库导出之后,通过powerdesigner整理,导出postgresql的脚本,然后在post ...
- Eclipse从数据库逆向生成Hibernate实体类和映射文件(Eclipse插件系列之HibernateTools)
♣下载安装Eclipse插件(HibernateTools) ♣Eclipse连接数据库(Mysql5.7) ♣新建hibernate.properties和hibernate.cfg.xml文件 ♣ ...
- Eclipse从数据库逆向生成Hibernate带注解的实体类
http://www.2cto.com/database/201501/372023.html
- mysql逆向生成 java 实体类
import java.io.File; import java.io.FileWriter; import java.io.PrintWriter; import java.sql.Connecti ...
- eclipse逆向生成hibernate的实体类(注解和配置文件)
eclipse从数据库逆向生成Hibernate实体类(注解和配置文件) 分类: hibernate 数据库 java 2011-10-22 21:28 2915人阅读 评论(8) 收藏 举报 做项目 ...
- (转) Eclipse通过HibernateTools实现逆向生成Hibernate实体类
背景:工作中使用Hibernate进行持久化的开发工作,所以有必要详细了解这方面的知识. ps:这里有个问题就是刷新表的时候速度太慢了.还不如自己手动去创建.如果表太多倒是可以采取批量生成的策略. 在 ...
随机推荐
- 初试 Vue.js
1.为什么我会想要来弄弄vue这个前端框架呢? 答:前段时间被小程序刷屏了,然后就去弄了一下小程序,嗯挺简单的:头脑一发热后就想到vue2也发布一段时间了,何不也来尝尝vue2.0的味道,最后发现它们 ...
- C#设计模式(6)-原型模式
引言 上一篇介绍了设计模式中的抽象工厂模式-C#设计模式(3)-建造者模式,本篇将介绍原型模式: 点击这里查看全部设计模式系列文章导航 原型模式简介 原型模式:用原型实例指定创建对象的种类,并且通过拷 ...
- APUE 3 -- 信号 (signal)<II>: 可靠信号
一个事件可以事一个信号发送给一个进程,这个事件可以是硬件异常,可以是软件条件触发,可以是终端产生信号,也可以是一个kill函数调用.当信号产生后,内核通常会在进程表中设置某种形式的标志(flag).我 ...
- 【实验吧】Reverse400
在网上下载,pyinstxtractor.py,对Reverse400.exe进行反汇编 得到其源代码为 $ cat Revesre03 data = \ "\x1c\x7a\x16\x77 ...
- 导出含有图片的Java项目,图片不显示
项目的一些图片资源文件在导出成JAR包后,无法正确读取虽然Java项目还是可以运行,但原来的图片资源全不见了,于是你可以打开JAR包看看里面的东西,确实是有图片在里面,就是无法读取. 其实是因为我们在 ...
- StringBuffer的添加与删除功能
StringBuffer的添加功能A* public StringBuffer append(String str): * 可以把任意类型数据添加到字符串缓冲区里面,并返回字符串缓冲区本身 B* pu ...
- Codeforces Round #436 (Div. 2) C. Bus
http://codeforces.com/contest/864/problem/C 题意: 坐标轴上有x = 0和 x = a两点,汽车从0到a之后掉头返回,从a到0之后又掉头驶向a...从0到a ...
- 深入理解计算机系统_3e 第二章家庭作业答案
初始完成者:哈尔滨工业大学 李秋豪 许可:除2.55对应代码外(如需使用请联系randy.bryant@cs.cmu.edu),任何人可以自由的使用,修改,分发本文档的代码. 本机环境: (有一些需要 ...
- 腾讯x5Webview取代原生android Webview
一.官方地址: https://x5.tencent.com/tbs/ 二.不需要申请开发者,QQ直接登录,下载即可集成到项目中. 三.与原生的webview对比优势 1) 速度快:相比系统webvi ...
- 深入理解计算机系统chapter2
---恢复内容开始--- 整数表示: 反码和原码都会有正零和负零 有符号整数和无符号整数之间的转换 反之 扩展一个数字的位级表示 截断操作 无符号加法的益处 补码的加法 规格化的值:E=e-bias ...