xiaoniao

          利用xdoclet開發hibernate3的ant通用代碼

          本文章是根據冰云BLOG上的文章改寫的,主要強調Hbm2Java部分的寫法,基本內容如下:

          1.拷貝必須的JAR文件
          ? 下載
          hibernate-tools-3.0alpha1 可以到http://prdownloads.sourceforge.net/hibernate/hibernate-tools-????? 3.1.0.alpha5.zip下載
          ??? 以下為必須的的JAR文件
          ????jtidy-r8-21122004.jar

          ??? velocity-tools-generic-1.1.jar
          ??? hibernate-tools.jar
          ??? hibernate3.jar
          ?? 這四個文件存在于 hibernate-tools-3.0alpha1 /plugins/org.hibernate.eclipse_3.0.0.alpha/lib目錄下面

          ???

          ? 數據庫驅動程序.jar
          ? 這兩個文件根據實際情況自定
          2.拷貝這些文件到你的工程lib目錄下面
          3.拷貝下面的ant代碼到你的工程

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

          ?<!-- ******? 環境設置,可以根據自己的實際配置自行更改 ***** -->
          ?<!-- ******? http://blog.csdn.net/fasttalk??? ***** -->
          ?<!-- ******? http://www.aygfsteel.com/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" /><!-這里可以改寫成你工程存在的lib目錄--->

          ?<!-- 定義類路徑 -->
          ?<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.hbm2java.Hbm2JavaTask"
          ????????? classpathref="project.class.path">
          ??</taskdef>

          ??<hbm2java output="${src.dir}"><!--這里為產生的JAVA類文件目錄-->
          ???<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>

          posted on 2006-07-26 21:12 小鳥 閱讀(374) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導航

          統計

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 镇宁| 盐津县| 江门市| 永仁县| 双柏县| 松溪县| 玉田县| 汕头市| 米泉市| 都安| 介休市| 佳木斯市| 巩义市| 新乡县| 泸州市| 江北区| 许昌市| 泊头市| 花莲县| 个旧市| 临高县| 宜丰县| 清苑县| 镇原县| 乐安县| 安西县| 遂昌县| 九龙县| 濉溪县| 甘泉县| 甘南县| 衡东县| 沧源| 鹤峰县| 天津市| 龙陵县| 大名县| 临邑县| 遵义县| 丹寨县| 凤翔县|