zoukankan      html  css  js  c++  java
  • 使用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,如需要其它类型直接在文件中进行修改))

    等等。。。。。

       

  • 相关阅读:
    发款php蜘蛛统计插件只要有mysql就可用
    利用mysql来做一个功能强大的在线计算器
    IndexOf、lastIndexOf、substring的用法
    需求分析工具的软件
    JSP程序设计
    灵活有效的数据仓库解决方案:第1部分:客户互动和项目计划
    灵活有效的数据仓库解决方案,第3部分:设计并实现仓库ETL过程
    Devpress.XtraGrid.GridControl.GridView 属性
    8种人将被淘汰
    WCF配置中遇到的问题:如何把Hostname修改成IP
  • 原文地址:https://www.cnblogs.com/start-fxw/p/7744432.html
Copyright © 2011-2022 走看看