Hibernate学习笔记(1)----用Ant与XDoclet自动生成Hibernate配置文件与映射文件

来源:互联网 发布:139邮箱exchange 端口 编辑:程序博客网 时间:2024/05/23 01:27

         

      现在主要从事JavaWeb开发,一直都想把JavaWeb里用的最广泛的S2SH(Struts2,Hibernate,Spring)经典组合框架系统的学习一遍,之前学完了Struts2,那么接下来一段时间将系统学习Hibernate。


      本次学习的环境为:


       1.      开发工具为MyEclipse 8.6


       2.      Jdk版本为1.6,tomcat的版本为6.0


        3.      Hibernate的版本为3.6.3,Xdoclet的版本为1.0.4(你也可以在此下载),Ant的版本为1.8.3


      4.      数据库用的是MySql,版本为5.5


      由于Hibernate中需要为JavaBean也就是model生成相应的映射文件,如果model不是很多的时候手写可以,如果model很多的时候也用手写的话,慢且不说,还很容易出错。而用Ant与Xdoclet就可以为工程自动生成配置文件和映射文件,省去不少功夫,下面就来配置Ant。


      首先添加系统变量,与添加Java环境变量一样,主要添加所示环境变量:


       ANT_HOME:E:\Jar\apache-ant


      Path:%ANT_HOME%\bin;(由于path变量名系统中已有,我们只需要在变量值中添加此数值就可以了!)


     当我们配置完成可以在开始---->运行里输入“CMD”,接着输入“ant-version”后成功列出版本信息则说明配置成功:


  


       接下来配置Xdoclet。


       新建一个项目工程HibernateTutorial,添加Hibernate 所必需的jar和数据库驱动。新建一个包用于存放model类文件,代码如下所示:


package com.yqsn.model; import java.io.Serializable; public class Course implements Serializable {       private int courseId;    private String courseName;       public int getCourseId() {       return courseId;    }    public void setCourseId(int courseId) {       this.courseId = courseId;    }       public String getCourseName() {       return courseName;    }    public void setCourseName(String courseName) {       this.courseName = courseName;    }      }


 

       接着在项目里新建一个配置文件build.xml(注意:此文件与srcWebRoot在同一目录下,不能写错),代码如下所示:


<?xml version="1.0"encoding="utf-8"?><project name="生成Hibernate配置文件" default="生成Hibernate配置文件" basedir=".">   <property name="src.dir" value="${basedir}/src"/>    <property name="xdoclet.home" value="E:/Jar/xdoclet-plugins-dist-1.0.4"/>    <!--Build classpath -->   <path id="xdoclet.task.classpath">         <fileset dir="${xdoclet.home}/lib">         <include name="**/*.jar"/>         </fileset>   </path>    <taskdef       name="xdoclet"       classname="org.xdoclet.ant.XDocletTask"       classpathref="xdoclet.task.classpath"    />      <target name="生成Hibernate配置文件">       <xdoclet>           <fileset dir="${src.dir}/com/yqsn/model">              <include name="**/*.java"/>           </fileset>                 <component              classname="org.xdoclet.plugin.hibernate.HibernateConfigPlugin"              destdir="${src.dir}"              version="3.0"              hbm2ddlauto="update"              jdbcurl="jdbc:mysql://localhost/hibernatetutorlal"              jdbcdriver="com.mysql.jdbc.Driver"              jdbcusername="root"              jdbcpassword="ldf"              dialect="org.hibernate.dialect.MySQLDialect"              showsql="true"           />       </xdoclet>    </target>    <target name="生成hibernate映射文件">       <xdoclet>           <fileset dir="${src.dir}/com/yqsn/model">              <include name="**/*.java"/>           </fileset>           <component              classname="org.xdoclet.plugin.hibernate.HibernateMappingPlugin"              version="3.0"              destdir="${src.dir}"           />       </xdoclet>    </target></project>


     这个也是我在网上拷贝的,自己能理解就可以了。

     在刚才新建的Course.java里添加注释,代码如下所示:

/** * @hibernate.class table="t_course" */package com.yqsn.model; import java.io.Serializable; public class Course implements Serializable {       private int courseId;    private String courseName;    /**     * @hibernate.id     * generator-class="native"     * @return     */    public int getCourseId() {       return courseId;    }    public void setCourseId(int courseId) {       this.courseId = courseId;    }    /**     * @hibernate.property     * @return     */    public String getCourseName() {       return courseName;    }    public void setCourseName(String courseName) {       this.courseName = courseName;    }      }


 

 

      下面开始利用Ant与XDcolet自动生成配置文件,在MyEclipse打开Ant视图,在空白处单击右键,选择“Add Buildfiles”,如下所示:




     

       在弹出的窗口中,找到本项目下的build.xml并选择它,Ant的下面就会有两个选项,一个用于生成Hibernate配置文件,一个用于Hibernate映射文件,如下所示:




      选择其中一个,单击右键,选择Run As  -àAnt Build,如下所示:

 


       如果输出信息中有“BUILD SUCCESSFUL”,那么你就生成成功了,两个都生成后,刷新此项目,你就会看到自动生成的Hibernate配置文件与映射文件,整个项目结构如下所示:




     这是本人学习的结果,欢迎转载,欢迎交流,但转载务必给出本文章的链接地址:http://blog.csdn.net/youqishini/article/details/7459519,谢谢~