基于Hibernate3.2 Hibernate tools 的使用

 由于新发布的Hibernate Tools是一个比较庞大的工具包 而且已经是作为Eclipse3.2 的插件发布的

然而以前的很有用的工具hbm2java和hbm2ddl都是非常有用的工具

所以我们应该把这些有用的工具找出来继续使用 

环境

jdk-1_5_0_07

ant 1.6.5

Hibernate 3.2 cr2

Hibernate Tools-3.2.0.beta6

mysql-5.0.22

首先下载Hibernate Tools的包

在HIbernate的主页上有连接 下载是在sourceforge.net

地址:http://prdownloads.sourceforge.net/jboss/HibernateTools-3.2.0.beta6a.zip?download

下载完了以后解压缩HibernateTools-3.2.0.beta6a/plugins/org.hibernate.eclipse_3.2.0.beta6a/lib/tools

里找到hibernate-tools.jar 放到你的工程的lib里

目录结构

 .
    +src
        +  your package
            *.java
            *.hbm.xml
            ...
        hibernate.config.xml
        ...
    +lib
    ......
    +data

    build.xml

把hibernate的目录里的lib里的jar  还有hibernate3.jar copy到lib里别忘了hibernate-tools.jar

注意hibernate3.jar要用HibernateTools-3.2.0.beta6a/plugins/org.hibernate.eclipse_3.2.0.beta6a/lib/hibernate里的hibernate3.jar

还有mysql-connector-java-5.0.0-beta-bin.jar 这个连接驱动也少不了

另外还要把HibernateTools-3.2.0.beta6a/plugins/org.hibernate.eclipse_3.2.0.beta6a/lib/tools的freemarker.jar也copy到lib里

尽管HIbernate的自动产生代码的方式有很多

比如

1 写java 代码用Xdoclet来产生hbm.xml

2 写hbm.xml来产生java代码

3 写hbm.xml来产生ddl

4 从数据库来产生hbm.xml和ddl

这里先讲解hbm2java 和 hbm2ddl

1 --hbm2java

把写好的代码*.hbm.xml放在你的src的包里

比如这样的Customer.hbm.xml

<? xml version="1.0" ?>
<! DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
>

< hibernate-mapping >

    
< class  name ="ergal.Customer"  table ="CUSTOMERS"  lazy ="false" >
        
< id  name ="id"  type ="long"  column ="ID" >
            
< generator  class ="increment"   />
        
</ id >
    
        
< property  name ="name"  type ="string" >
            
< column  name ="NAME"  length ="15"   />
        
</ property >
        
< set 
            
name ="orders"
            cascade
="save-update"  
            inverse
="true"
            
>
        
            
< key  column ="CUSTOMER_ID"   />
            
< one-to-many  class ="ergal.Order"   />
        
</ set >    
    
</ class >
</ hibernate-mapping >

还有Order.xml

<? xml version="1.0" ?>
<! DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
>

< hibernate-mapping >

    
< class  name ="ergal.Order"  table ="ORDERS" >
        
< id  name ="id"  type ="long"  column ="ID" >
            
< generator  class ="increment"   />
        
</ id >
    
        
< property 
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值