新聞中心
Hibernate映射文件還是比較常用的,于是我研究了一下Hibernate映射文件,在這里拿出來和大家分享一下,希望對大家有用。

成都創(chuàng)新互聯(lián)公司是創(chuàng)新、創(chuàng)意、研發(fā)型一體的綜合型網(wǎng)站建設公司,自成立以來公司不斷探索創(chuàng)新,始終堅持為客戶提供滿意周到的服務,在本地打下了良好的口碑,在過去的十載時間我們累計服務了上千家以及全國政企客戶,如成都電動窗簾等企業(yè)單位,完善的項目管理流程,嚴格把控項目進度與質(zhì)量監(jiān)控加上過硬的技術實力獲得客戶的一致稱揚。
實際上,hbm2java被設計成用來把Hibernate映射文件轉(zhuǎn)化成一組相應的Java類。如果你想在實際的應用程序中使用這種方法,很顯然,對于所有的Hibernate映射文件一次性生成類會更為方便。***的方法是把類生成結合進你的自動化構建過程中。結合進Ant構建過程中使用Ant調(diào)用hbm2java是相當直接的。首先,你需要申明hbm2java任務(task)以便Ant可以調(diào)用它:
- classname="net.sf.hibernate.tool.hbm2java.Hbm2JavaTask"
- classpathref="project.class.path"/>
接著,你要用到這個任務。例如,通過寫一個目標(target)將源目錄中的所有*.hbm.xml文件生成源代碼。假設${src.Hibernate}表示含有Hibernate映射文件的目錄,${src.generated}就是你想放源代碼的地方。這樣Ant任務看起來就象是:
- description="Generate Java source code
- from the Hibernate mapping files">
Maven 1定制構建過程
為結合進Maven 1構建過程,你需要修改maven.xml文件。Maven代碼就存放在這個文件中。腳本(script)主要檢查了Hibernate映射文件自上次類生成后是否已被更改(使用uptodate 標記),如果沒有,就調(diào)用此前所描述的Ant中的hbm2java任務。這種情況下,我們做了以下的假設:
◆hbm2java.xml配置文件應在src/Hibernate目錄中
◆Hibernate映射文件應在src/Hibernate目錄中
◆在src/generated/src/java目錄下生成Java類
- targetfile="${maven.src.dir}/generated/hbm.jar">
- value="${hibernateBuild.uptodate}"/>
- classname="net.sf.hibernate.tool.hbm2java.Hbm2JavaTask"
- classpathref="maven.dependency.classpath"/>
- output="${maven.src.dir}/generated/src/java" >
Maven 2定制構建過程
若碰巧你正使用Maven 2,事情就更簡單一點了。把maven-antrun-plugin插件添加到pom.xml文件中,而不是在maven.xml文件中使用完整的 goals屬性(pre and post goals)。在此插件中的task那部分,你可以象上述那樣直接調(diào)用Ant 任務。
- maven-antrun-plugin
- generate-sources
- classname="org.hibernate.tool.ant.HibernateToolTask"
- classpathref="maven.dependency.classpath"/>
- run
在Hibernate 3中使用hbm2java
Hbm2java 工具已經(jīng)經(jīng)受了Hibernate 3 的考驗。hbm2java任務與其它相似的任務一起,被集成進了新版Hibernate 工具集中的Hibernatetool任務(撰寫此文時仍是alpha版)。Ant任務需要在類路徑(class path)中查找以下的.jar 文件:
◆Hibernate-tools.jar
◆velocity-1.4.jar
◆velocity-tools-generic-1.4.jar
◆jtidy-r8-21122004.jar
◆Hibernate3.jar
◆JDBC drivers
這樣一來,Ant任務就要作如下申明:
- classname="org.hibernate.tool.ant.HibernateToolTask"
- classpathref="maven.dependency.classpath"/>
***,你在Hibernatetool 任務中調(diào)用hbm2java任務,做法如下
- classname="org.hibernate.tool.ant.HibernateToolTask"
- classpathref="maven.dependency.classpath"/>
【編輯推薦】
- Hibernate對數(shù)據(jù)索引進行緩存
- 剖析Hibernate主鍵生成幾種常用方式
- 淺析Hibernate實現(xiàn)實體對象延遲加載
- Hibernate集合類型的延遲加載特性
- 概括Hibernate屬性延遲加載
新聞名稱:Hibernate映射文件深入剖析
轉(zhuǎn)載注明:http://fisionsoft.com.cn/article/ccdosss.html


咨詢
建站咨詢
