ant深入浅出(一)ant+xdoclet 生成hibernate配置文件以及实体映射文件

  1. 前言
    1. 作为一个学习生物学的人,应该知道它是蚂蚁的意思,蚂蚁(ant)属节肢动物门,昆虫纲,膜翅目,蚁科。在众多的科中有的还分了亚科,用来区分更多的种类,
    2. 蚂蚁是地球上最常见的昆虫,数量最多的昆虫种类。由于各种蚂蚁都是社会性生活的群体,在古代通称“蚁”。据现代形态科学分类,蚁可分两大种群:蚂蚁类和白蚁类。
    3. 蚁族的特征是体积小、数量多,往往是成群结队的出行,在软件领域之所以用ant来命名命名,可能是项目开发步骤之多可与蚂蚁的数量相媲美,它们有着共同的特征因此ant代表着管理无数个微小构建过程的意思。
  2. ant
    1. java项目开发的过程如此繁多,多如牛毛往往让我们做了这里忘了那里,尤其是在维护的过程中好多地方需要手动维护,若都靠大脑来记住会很乱,在忙碌的工作中难免会出一些错误,为了把一些类似或者重要的过程构建集中管理,我们引入了ant工具,它可以帮助我们构建特殊任务。
    2. 当一个代码项目大了以后,每次重新编译,打包,测试等都会变得非常复杂而且重复,在C语言中有make脚本来帮助这些工作的批量完成。在Java 中应用是平台无关性的,不会用平台相关的make脚本来完成这些批处理任务了,ANT本身就是这样一个流程脚本引擎,用于自动化调用程序完成项目的编译,打包,测试等。
    3. 除了基于JAVA是平台无关的外,脚本的格式是基于XML的,比make脚本来说还要好维护一些。
    4. 当然它也可以同别的框架集成,完成自定义任务,只需要在build.xml文件中引入用到的jar包即可,操作简单方便,下面以通过一个简单的小例子说明,如何搭建环境以及ant怎么使用。
  3. 讨论
    1. 学习的东西多了就会容易迷惑,大家都知道ORM(hibernate)可以通过实体类生成表,它可以采用两种方式第一种实体映射文件、第二种是JPA注解方式,如果通过注解方式生成关系表,那么就不需要应用xdoclet生成配置文件了,只有通过配置文件生成表时才会用到ant+xdoclet
  4. 环境搭建以及构建任务
    1. 环境搭建的基础一定要把java最基本的IDE环境搭建好,里面重要的是设置PATHCLASSPATHJAVA_HOME三个环境变量,在这基础之上才能搭建ant,设置ANT_HOME环境变量,并添加到PATH中,在cmd运行输入ant,出现下图表示安装成功。

    2. 下载xdoclet解压,然后,添加到ant中:

      1. 然后,在项目根目录里面加入build.xml构建文件,代码如下:
      2. [html]  view plain copy print ?
        1. <?xml version="1.0" encoding="GBK"?>  
        2. <project name="OA系统构建脚本" default="生成Hibernate配置文件" basedir=".">  
        3.     <!--后面的构建任务中可能会用到的一些基本属性-->  
        4.     <property name="src.dir" value="${basedir}/src"/>  
        5.     <property name="build.dir" value="${basedir}/bin"/>  
        6.     <property name="webapp.dir" value="${basedir}/src/webapp"/>  
        7.     <property name="xdoclet.home" value="D:/xdoclet/xdoclet-plugins-1.0.3"/>  
        8.       
        9.     <!-- Build classpath 构建任务可能用到的依赖jar包路径-->  
        10.     <path id="xdoclet.task.classpath">  
        11.         <fileset dir="${xdoclet.home}/lib">  
        12.             <include name="**/*.jar"/>  
        13.         </fileset>  
        14.         <fileset dir="${xdoclet.home}/plugins">  
        15.             <include name="**/*.jar"/>  
        16.         </fileset>  
        17.     </path>  
        18.     <!-- 引用引入的jar包-->  
        19.     <taskdef  
        20.         name="xdoclet"  
        21.         classname="org.xdoclet.ant.XDocletTask"  
        22.         classpathref="xdoclet.task.classpath"  
        23.     />  
        24.   
        25.     <target name="生成Hibernate配置文件">  
        26.         <xdoclet>  
        27.             <fileset dir="${src.dir}/com/bjsxt/oa/model">  
        28.                 <include name="**/*.java"/>  
        29.             </fileset>              
        30.             <component  
        31.                 classname="org.xdoclet.plugin.hibernate.HibernateConfigPlugin"  
        32.                 destdir="${src.dir}"  
        33.                 version="3.0"  
        34.                 hbm2ddlauto="update"  
        35.                 jdbcurl="jdbc:mysql://127.0.0.1/oa_200706"  
        36.                 jdbcdriver="com.mysql.jdbc.Driver"  
        37.                 jdbcusername="root"  
        38.                 jdbcpassword="123456"  
        39.                 dialect="org.hibernate.dialect.MySQLDialect"  
        40.                 showsql="true"  
        41.             />  
        42.         </xdoclet>  
        43.     </target>  
        44.     <target name="生成hibernate映射文件">  
        45.         <xdoclet>  
        46.             <fileset dir="${src.dir}/com/bjsxt/oa/model">  
        47.                 <include name="**/*.java"/>  
        48.             </fileset>  
        49.             <component   
        50.                 classname="org.xdoclet.plugin.hibernate.HibernateMappingPlugin"  
        51.                 version="3.0"  
        52.                 destdir="${src.dir}"  
        53.             />  
        54.         </xdoclet>  
        55.     </target>  
        56. </project>  

  5. 学会利用工具开发可以提高开发效率,把一些重复性的工作交给计算机来处理,从石器时代过度到近代的一个重要标志就是:工具的使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值