使用Ant自动化发开Hibernate

在开发使用Hibernate框架应用程序中,无外乎要创建hibernate.cfg.xml,xxx.hbm.xml,pojos和databaseSchema这些文件,框架这东西刚开始学会的时候,都是心情舒畅,热情高涨,所有文件都是自己手写不管这样重复性的工作有多么的乏味,爱情都会由低潮期更别说重复Coding了,久而久之在编写一个个xml、pojo和schema的过程中,不由从心中产生一种不舒畅之气。

成都创新互联服务项目包括桑日网站建设、桑日网站制作、桑日网页制作以及桑日网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,桑日网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到桑日省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

我曾经有一段时间见到代码文件就有想吐的冲动,不过还好我还是挺过来,嘛也就是像爱情麻木期一样,怎么都无所谓了。直到最近了解到Ant这个工具,让我看到了另一种发开Hibernate应用程序的方式,并不是说这样的开发方式就一定好于纯手工编写,适合自己才是***的,但我是一个比较爱偷懒的,自动化构建非常的吸引我。开头字数凑够了就进入正题了,首先直接上build.xml,这个文件是ant所需要的。

 
 
 
 
  1.  
  2.  
  3.  
  4.       
  5.      
  6.      
  7.       
  8.      
  9.      
  10.          
  11.              
  12.              
  13.          
  14.      
  15.       
  16.      
  17.      
  18.       
  19.      
  20.      
  21.          
  22.              
  23.              
  24.                  
  25.                  
  26.              
  27.               
  28.              
  29.              
  30.               
  31.              
  32.              
  33.              
  34.              
  35.          
  36.      
  37.  

build.properties文件:

 
 
 
 
  1. source_folder_dir=src  
  2. reference_libs_dir=referencelibs  
  3. database_schema_dir=dbschema 

这是项目最开始的状态:

此时项目中仅仅只是定义了cfg和hbm文件,数据库schema和pojo都没有定义,"referencelibs"中存放的是该程序要成功需要的依赖库文件。运行Ant,此时项目的状态:

可以看到,我们的需要的pojo类和schema都生成好了,其实按照我的build.xml设置,数据库已经直接设置到了两张表了。验证器正确性:

Customer.hbm.xml:

 
 
 
 
  1.  
  2.  
  3.      
  4.          
  5.              
  6.              
  7.                  
  8.                  
  9.              
  10.              
  11.              
  12.              
  13.               
  14.              
  15.                  
  16.                  
  17.              
  18.          
  19.      

Customer.java

 
 
 
 
  1. package com.beliefbetrayal.hibernate.pojos;  
  2. // Generated 2012-2-8 1:10:59 by Hibernate Tools 3.3.0.GA  
  3.  
  4. import java.util.HashSet;  
  5. import java.util.Set;  
  6.  
  7. /**  
  8.  * Customer generated by hbm2java  
  9.  */ 
  10. public class Customer  implements java.io.Serializable {  
  11.  
  12.      private String id;  
  13.      private String username;  
  14.      private Integer balance;  
  15.      private Set orders = new HashSet(0);  
  16.  
  17.     public Customer() {  
  18.     }  
  19.  
  20.     public Customer(String username, Integer balance, Set orders) {  
  21.        this.username = username;  
  22.        this.balance = balance;  
  23.        this.orders = orders;  
  24.     }  
  25.      
  26.     public String getId() {  
  27.         return this.id;  
  28.     }  
  29.       
  30.     public void setId(String id) {  
  31.         this.id = id;  
  32.     }  
  33.     public String getUsername() {  
  34.         return this.username;  
  35.     }  
  36.       
  37.     public void setUsername(String username) {  
  38.         this.username = username;  
  39.     }  
  40.     public Integer getBalance() {  
  41.         return this.balance;  
  42.     }  
  43.       
  44.     public void setBalance(Integer balance) {  
  45.         this.balance = balance;  
  46.     }  
  47.     public Set getOrders() {  
  48.         return this.orders;  
  49.     }  
  50.       
  51.     public void setOrders(Set orders) {  
  52.         this.orders = orders;  
  53.     }  

可以看到,我们借助Ant生成的POJO完全没问题。看看数据库Schema:

 
 
 
 
  1. create table customer (  
  2.         id varchar(255) not null,  
  3.         username varchar(255),  
  4.         balance integer,  
  5.         primary key (id)  
  6.     );  
  7.  
  8.     create table orders (  
  9.         id varchar(255) not null,  
  10.         orderNumber varchar(255),  
  11.         cost integer,  
  12.         customer_id varchar(255),  
  13.         primary key (id)  
  14.     );  
  15.  
  16.     alter table orders   
  17.         add index FKC3DF62E51E0069B1 (customer_id),   
  18.         add constraint FKC3DF62E51E0069B1   
  19.         foreign key (customer_id)   
  20.         references customer (id); 

使用Ant自动化开发Hibernate需要hibernate-tools.jar包。我将项目整理了一下可以下载参考项目下载。

文章名称:使用Ant自动化发开Hibernate
文章转载:http://www.shufengxianlan.com/qtweb/news1/196201.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联