<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 70,comments - 408,trackbacks - 0
          Hibernate為了簡化開發,給我們提供了四種工具,hbm2java,hbm2ddl,XDoclet,Middlegen.其中我覺得hbm2java(根據映射文件生成JAVA源文件),hbm2ddl(根據映射文件生成數據庫文件,這兩個工具非常實用.還有XDoclet(根據帶有XDoclet標記的JAVA源文件生成映射文件).Middlegen(根據數據庫文件生成映射文件的工具也不錯.不過我沒怎么使用過.所以這里就不多說了.好了下面我們創建一個對象-關系映射文件,來演示一下這兩種工具的使用方法.首先創建我們的XML映射文件.這里命名為Demo.hbm.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 2.0//EN" "hibernate-mapping-2.0.dtd" >
    <hibernate-mapping>
     <class name="hibernate.Demo" table="DEMOS">
      <meta attribute="class-description">ToolDemo</meta>
      <meta attribute="class-scope">public</meta>
      
      <id name="id" type="long" column="ID">
       <meta attribute="scope-set">protected</meta>
       <generator class="native"/>
      </id>
      
      <property name="name" type="string">
       <meta attribute="finder-method">findByName</meta>
       <meta attribute="use-in-tostring">true</meta>
       <column name="NAME" length="15" not-null="true" unique="true"/>
      </property>
      
      <property name="registeredTime" type="timestamp">
       <meta attribute="field-description">When the Demo</meta>
       <meta attribute="use-in-tostring">true</meta>
       <column name="REGISTERED_TIME" index="IDX_REGISTERED_TIME" sql-type="timestamp"/>
      </property>
      
      <property name="age" type="int">
       <meta attribute="field-description">How old is the Demo</meta>
       <meta attribute="use-in-tostring">true</meta>
       <column name="AGE" check="AGE>10" not-null="true"/>
      </property>
      
      <property name="sex" column="SEX" type="char"></property>
      
      <property name="married" type="boolean" column="IS_MARRIED">
       <meta attribute="field-description">Is the Demo married</meta>
       <meta attribute="use-in-tostring">true</meta>
      </property>
      
      <property name="description" type="string">
       <meta attribute="use-in-tostring">true</meta>
       <column name="DESCRIPTION" sql-type="text"/> 
      </property>
     </class>
    </hibernate-mapping>

          解釋下上面的XML文件,這里主要說明是的<meta>元素,用于精確的控制JAVA源文件的內容.
      <meta attribute="class-description">ToolDemo</meta>這里是源文件類的注釋,用于生成javadoc
      <meta attribute="class-scope">public</meta>這個是類的修飾符
      <meta attribute="extends">hibernate.Tool</meta>這里聲明這個類繼承于哪個類,這里是繼承hibernate包下的Tool類
       <meta attribute="field-description">Is the Demo married</meta>這個也是注釋,是屬性的注釋,用于生成javadoc
       <meta attribute="use-in-tostring">true</meta>這個是指定在類的toString()方法返回的字符串是否包含這個屬性.
       <meta attribute="scope-set">protected</meta>指定類的屬性的get或set方法的修飾符,包括static public final privete等等
       
       下面列出<meta>元素的所有屬性的用法
       class-description指定類的注釋,javadoc
       field-description指定類的屬性的注釋,javadoc
       interface如果是true表示生成的就接口,不是類,默認是false
       implements指定類要實現的接口
       extends指定類要繼承的類  
       generated-class重新生成類名
       scope-class指定類的修飾復,默認的是public
       scope-set設置set方法的修飾復,默認public
       scope-get設置get方法的修飾復,默認public
       scope-field設定類的屬性的修飾復,默認public
       use-in-tostring如果是true表示在類的toString()方法中包含這個屬性
       gen-property如果是false表示不會在類中生成這個屬性,默認是true
       finder-method設定find方法名

       下面列出<column>元素的所有屬性和用法
       name設置表字段的名字
       length設置表字段的長度
       not-null如果是true說明字段不可以為null,默認是false
       unique如果是true,設置字段唯一性約束,默認是false
       index給一個字段或者多個字段建立索引
       unique-key為多個字段設置唯一約束
       freign-key為外鍵約束命名
       sql-type設定字段的SQL類型
       check設定SQL檢查約束

          基礎知識就以上這些,記住就OK了hbm2ddl位于Hibernate軟件包中,而hbm2java工具位于Hibernate的擴展包中,真不理解Hibernate為什么這么搞,弄的好是麻煩,一起用的兩個工具要分開放在兩個包里哎,好了廢話不說,在www.hibernate.org上可以下載到單獨的Hibernate擴展包,hibernate-tools.jar放到我們的classpath下,然后創建build.xml用ant來運行這兩個工具就OK了.非常方便.有時間在把ANT的詳細使用方法發布到我的BLOG上.
    posted on 2007-05-17 16:47 我心依舊 閱讀(5086) 評論(0)  編輯  收藏

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


    網站導航:
     
    主站蜘蛛池模板: 亚洲电影免费观看| caoporm碰最新免费公开视频| 青青青国产手机频在线免费观看 | 最近2019中文字幕mv免费看| 亚洲精品韩国美女在线| av免费不卡国产观看| 亚洲天堂一区二区三区| 免费H网站在线观看的| 亚洲中文字幕乱码AV波多JI | 在线播放免费人成视频在线观看| 最新亚洲卡一卡二卡三新区| 黑人粗长大战亚洲女2021国产精品成人免费视频 | 亚洲精品电影在线| 九九精品免费视频| 国产精品无码亚洲精品2021 | 大地资源网高清在线观看免费| 亚洲国产成人一区二区精品区 | 一级日本高清视频免费观看| 亚洲人成精品久久久久| **真实毛片免费观看| 亚洲中文字幕久久无码| 亚洲一区精品伊人久久伊人 | 久久精品一区二区免费看| 亚洲国产精品成人综合久久久 | 国产精品久久免费视频| 香蕉免费看一区二区三区| 91亚洲va在线天线va天堂va国产| 国内精品乱码卡1卡2卡3免费| 老司机午夜免费视频| 亚洲专区先锋影音| 国产精品免费一级在线观看| 欧洲人成在线免费| 国产尤物在线视精品在亚洲| 亚洲久本草在线中文字幕| 精品国产免费观看| 热re99久久6国产精品免费| 亚洲爆乳无码专区www| 亚洲妇熟XXXX妇色黄| 成人永久免费高清| 亚洲免费在线播放| 人妻仑乱A级毛片免费看|