Sung in Blog

                     一些技術(shù)文章 & 一些生活雜碎

          Hibernate真是受歡迎,有那么多工具為它服務(wù),XDoclet、MiddleGen、各種插件。。。

          用XDoclet生成hbm.xml就是在.java文件里寫入一些元數(shù)據(jù),XDoclet會(huì)從這些數(shù)據(jù)以及類本身得到足夠的信息來生成目標(biāo)文件。當(dāng)然,除了用于hibernate,XDoclet還可以用于web、ejb等等很多用途。

          XDoclet要從sourceforge上下載,包含了很多jar包、文檔和例子,我覺得文檔做得還是不錯(cuò)的,查起來比較方便。要使用XDoclet,一般要通過ant來完成,也就是在ant腳本里加入XDoclet的內(nèi)容。

          由于eclipse已經(jīng)包含了ant支持,因此我沒有專門去下載一個(gè)ant回來,而是直接使用eclipse帶的,版本是1.5.3。

          創(chuàng)建一個(gè)名為build.xml的腳本(其實(shí)應(yīng)該換個(gè)名,比如gen-hbm.xml,看起來比較明白),內(nèi)容如下:


          ???
          ???
          ???
          ???????
          ???????????
          ???????

          ???

          ???? ??????? name="hibernatedoclet"
          ??????? classname="xdoclet.modules.hibernate.HibernateDocletTask"
          ??????? classpathref="myclasspath"
          ??????? />
          ???

          ??????? +---------------------------------------------------+
          ??????? |?????????????????????????????????????????????????? |
          ??????? | R U N N I N G?? H I B E R N A T E D O C L E T???? |
          ??????? |?????????????????????????????????????????????????? |
          ??????? +---------------------------------------------------+

          ??????? ??????????? destdir="./src"
          ??????????? excludedtags="@version,@author,@todo,@see"
          ??????????? addedtags="@xdoclet-generated at ${TODAY},@copyright The XDoclet Team,@author XDoclet,@version ${version}"
          ??????????? force="false"
          ??????????? verbose="true">

          ???????????
          ???????????????
          ???????????

          ???????????

          ???????
          ???

          我曾經(jīng)卡住的一個(gè)地方就是在taskdef里的classpathref屬性。一開始我在eclipse的ant運(yùn)行參數(shù)里設(shè)置了XDoclet相關(guān)的包,總是提示:

          Can't create a hibernate element under hibernatedoclet. Make sure the jar file containing the corresponding subtask class is on the classpath specified in the that defined {2}.

          后來如上設(shè)置了classpathref,即包含了XDoclet使用到的包,并將eclipse的ant里關(guān)于XDoclet的包都去掉,竟然就成功了。

          Hibernate真是受歡迎,有那么多工具為它服務(wù),XDoclet、MiddleGen、各種插件。。。

          用XDoclet生成hbm.xml就是在.java文件里寫入一些元數(shù)據(jù),XDoclet會(huì)從這些數(shù)據(jù)以及類本身得到足夠的信息來生成目標(biāo)文件。當(dāng)然,除了用于hibernate,XDoclet還可以用于web、ejb等等很多用途。

          XDoclet要從sourceforge上下載,包含了很多jar包、文檔和例子,我覺得文檔做得還是不錯(cuò)的,查起來比較方便。要使用XDoclet,一般要通過ant來完成,也就是在ant腳本里加入XDoclet的內(nèi)容。

          由于eclipse已經(jīng)包含了ant支持,因此我沒有專門去下載一個(gè)ant回來,而是直接使用eclipse帶的,版本是1.5.3。

          創(chuàng)建一個(gè)名為build.xml的腳本(其實(shí)應(yīng)該換個(gè)名,比如gen-hbm.xml,看起來比較明白),內(nèi)容如下:


          ???
          ???
          ???
          ???????
          ???????????
          ???????

          ???

          ???? ??????? name="hibernatedoclet"
          ??????? classname="xdoclet.modules.hibernate.HibernateDocletTask"
          ??????? classpathref="myclasspath"
          ??????? />
          ???

          ??????? +---------------------------------------------------+
          ??????? |?????????????????????????????????????????????????? |
          ??????? | R U N N I N G?? H I B E R N A T E D O C L E T???? |
          ??????? |?????????????????????????????????????????????????? |
          ??????? +---------------------------------------------------+

          ??????? ??????????? destdir="./src"
          ??????????? excludedtags="@version,@author,@todo,@see"
          ??????????? addedtags="@xdoclet-generated at ${TODAY},@copyright The XDoclet Team,@author XDoclet,@version ${version}"
          ??????????? force="false"
          ??????????? verbose="true">

          ???????????
          ???????????????
          ???????????

          ???????????

          ???????
          ???

          我曾經(jīng)卡住的一個(gè)地方就是在taskdef里的classpathref屬性。一開始我在eclipse的ant運(yùn)行參數(shù)里設(shè)置了XDoclet相關(guān)的包,總是提示:

          Can't create a hibernate element under hibernatedoclet. Make sure the jar file containing the corresponding subtask class is on the classpath specified in the that defined {2}.

          后來如上設(shè)置了classpathref,即包含了XDoclet使用到的包,并將eclipse的ant里關(guān)于XDoclet的包都去掉,竟然就成功了。

          ]]>
          posted on 2005-10-14 09:51 Sung 閱讀(411) 評(píng)論(0)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 丹阳市| 虎林市| 分宜县| 台北市| 大连市| 盐亭县| 新绛县| 洪泽县| 绍兴县| 钦州市| 通海县| 渭源县| 青龙| 黄骅市| 密云县| 扎兰屯市| 邢台县| 拜城县| 南丹县| 嘉鱼县| 农安县| 兰州市| 金门县| 大丰市| 湖州市| 阜新市| 剑河县| 都昌县| 巍山| 凤城市| 灵川县| 读书| 绥芬河市| 灵寿县| 乌拉特前旗| 明星| 凌源市| 昔阳县| 福安市| 松原市| 牡丹江市|