使用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:这里有个问题就是刷新表的时候速度太慢了.还不如自己手动去创建.如果表太多倒是可以采取批量生成的策略. 在 ...
随机推荐
- 使用electron将应用程序加入到系统托盘
博主电脑
- Linux文件管理_1
在Linux中,全部都是文件,所以文件管理在Linux上格外重要,在我们学习文件管理前,我们先学习几个关于文件的命令,之后才能更好的学习文件管理. 目录 pwd命令 cd命令 列出文件内容ls 查看文 ...
- 高德地图markers生成和点击
因为自己平时上班也是比较忙,遇到什么写什么,希望能给现在的你一些帮助,都是自己在工作中遇到的问题,给自己一个提醒,也是分享 相信很多人在做高德地图开发的时候,对于新手,官方的demo解读单个marke ...
- linux 命令随笔 ls cd pwd mkdir rm mv cp cat nl
Linux 命令练习 ls命令 ls就是list的简写,目的是打印当前目录下的清单 格式 ls[选项][目录名] 常用参数 -a –all 列出目录下的所有文件,包括以 . 开头的隐含文件 -l 除了 ...
- 【SQL】- 基础知识梳理(四) - 存储过程
存储过程的概念 存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行 存储过程的好处 A. 存储过程允许标准组件式编程 ...
- Redis学习笔记之二 :在Java项目中使用Redis
成功配置redis之后,便来学习使用redis.首先了解下redis的数据类型. Redis的数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set( ...
- sdk&jdk&jre
1. jre and jdkJRE(Java Runtime Enviroment)是Java的运行环境.面向Java程序的使用者,而不是开发者.如果你仅下载并安装了JRE,那么你的系统只能运行Jav ...
- 『诡异的』VL10B创建外向交货单出错解决全过程
一直觉得SAP STO的业务模式配置起来还是挺简单的,无非就是关联一下采购单与交货单的关系,以及相应工厂的装运数据,其他像主数据的设置也没有什么特别的.相比ICS模式,它少了IDOC的配置,所以还是很 ...
- PHP 生成毫秒时间戳
PHP的time()函数生成当前时间的秒数,但是在一些情况下我们需要获取当前服务器时间和GMT(格林威治时间)1970年1月0时0分0秒的毫秒数,与Java中的currentTimeMilis()函数 ...
- php中常用的字符串大小写转换函数实例解释
PHP字符串处理函数中,最为简单的几个函数,相关解释就不上了,直接看例子. PHP字符串处理函数中,最为简单的几个函数,相关解释就不上了,直接看例子. strtolower函数.strtoupper函 ...