Asktalk

天行健,君子以自强不息!
posts - 21, comments - 79, trackbacks - 0, articles - 2
  BlogJava :: 首页 ::  :: 联系 :: 聚合  :: 管理

不知道为什么,复制到这里颜色没了,所以就成下面的了。还可以凑或着看吧
不用多说了,已经注释很详细了,希望对你有帮助

<?xml version="1.0" encoding="utf-8"?>
<project name="利用工具开发Hibernate" default="help" basedir=".">

 <!-- ******  环境设置,可以根据自己的实际配置自行更改 ***** -->
 <!-- ******  http://blog.csdn.net/fasttalk    ***** -->
 <!-- ******  http://www.blogjava.net/asktalk  ***** -->
 <!-- 源文件目录, 可以通过 项目->属性->Java构建路径 更改 -->
 <property name="src.dir" value="./src" />
 <!-- 输出的class文件目录,可以通过 项目->属性->Java构建路径 更改 -->
 <property name="class.dir" value="./bin" />
 <!-- 库文件目录  -->
 <property name="lib.dir" value="E:/workspace/java/hibernate3" />

 <!-- 定义类路径 -->
 <path id="project.class.path">
  <fileset dir="${lib.dir}">
   <include name="*.jar"/>
  </fileset>
  <pathelement location="${class.dir}" />
 </path>

 <!-- ************************************************************** -->
 <!-- 使用说明 -->
 <!-- ************************************************************** -->
 <target name="help">
  <echo message="利用工具开发Hibernate" />
  <echo message="-----------------------------------" />
  <echo message="" />
  <echo message="提供以下任务:" />
  <echo message="" />
  <echo message="generate-hbm     --> 运行HibernateDoclet,生成 Hibernate 类的映射文件" />
  <echo message="schemaexport     --> 运行SchemaExport,利用 hbm.xml 文件生成数据表" />
  <echo message="" />
 </target>


 <!-- ************************************************************** -->
 <!-- Hbm2Java 任务 在hibernate3中无法实现 -->
 <!-- ************************************************************** -->
 <target name="generate-code" >
  <echo message="运行 Hbm2Java 任务, 利用 hbm.xml 文件生成Java类文件"/>

  <taskdef name="hbm2java"
       classname="org.hibernate.tool.instrument.InstrumentTask"
          classpathref="project.class.path">
  </taskdef>

  <hbm2java output="${src.dir}">
   <fileset dir="${src.dir}">
    <include name="**/*.hbm.xml"/>
   </fileset>
  </hbm2java>
 </target>


 <!-- ************************************************************** -->
 <!-- HibernateDoclet 任务 -->
 <!-- ************************************************************** -->
 <target name="generate-hbm" >
  <echo message="运行HibernateDoclet,生成 Hibernate 类的映射文件"/>

  <taskdef name="hibernatedoclet"
   classname="xdoclet.modules.hibernate.HibernateDocletTask"
   classpathref="project.class.path">
  </taskdef>
        <!--
        destdir         输出目录;
        force,          每次都强行执行,覆盖原有文件;
        -->
  <hibernatedoclet destdir="${src.dir}"
   excludedtags="@version,@author,@todo" force="true" encoding="GBK"
   verbose="true">

   <fileset dir="${src.dir}">
    <include name="**/*.java"/>
   </fileset>

   <hibernate version="3.0" xmlencoding="utf-8" />
  </hibernatedoclet>
 </target>


 <!-- ************************************************************** -->
 <!-- SchemaExport 任务 -->
 <!-- ************************************************************** -->
 <target name="schemaexport">
  <echo message="运行SchemaExport,利用 hbm.xml 文件生成数据表"/>

  <taskdef name="schemaexport"
   classname="org.hibernate.tool.hbm2ddl.SchemaExportTask"
   classpathref="project.class.path">
  </taskdef>
      <!--
      quiet=true                       不要把脚本输出到stdout;
      drop=true                        只进行drop tables的步骤 ;
      text=true                        不执行在数据库中运行的步骤 ;
      output=my_schema.ddl             把输出的ddl脚本输出到一个文件 ;
      config=hibernate.cfg.xml         从XML文件读入Hibernate配置 ;
      properties=hibernate.properties  从文件读入数据库属性 ;
      format=true                      把脚本中的SQL语句对齐和美化 ;
      delimiter=x                      为脚本设置行结束符
      -->
  <schemaexport properties="src/hibernate.properties"
  quiet="no" text="no" drop="no"  output="schema-export.sql" >
         <fileset dir="${src.dir}">
             <include name="**/*.hbm.xml"/> 
         </fileset>
  </schemaexport>
 </target>

</project>

 


评论

# re: 利用xdoclet开发hibernate3的ant通用代码  回复  更多评论   

2006-10-09 22:17 by 野草sz
感谢

只有注册用户登录后才能发表评论。


网站导航: