lyyb2001

          只是為方便自己找記錄而已
          posts - 57, comments - 27, trackbacks - 0, articles - 5
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理

          Hibernate配置手冊

          Posted on 2007-03-05 15:37 skycity 閱讀(359) 評論(0)  編輯  收藏 所屬分類: Hibernate相關

          Hibernate.cfg.xml配置文件:
          <?xml version="1.0" encoding="utf-8"?>
          <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN" "hibernate-configuration-2.0.dtd">
          <hibernate-configuration>
          ??? <session-factory>
          ??????? <!-- properties -->
          ??????? <!-- jndi -->
          ??????? <property name="connection.datasource">java:comp/env/jdbc/quickstart</property>
          ??????? <property name="connection.provider_class">net.sf.hibernate.connection.DatasourceConnectionProvider</property>
          ??????? <property name="dialect">net.sf.hibernate.dialect.SQLServerDialect</property>
          ??????? <!-- jdbc
          ??????? <property name="connection.url">jdbc:microsoft:sqlserver://localhost:1433;SelectMethod=cursor;DatabaseName=pubs</property>
          ??????? <property name="connection.driver_class">com.microsoft.jdbc.sqlserver.SQLServerDriver</property>
          ??????? <property name="connection.username">sa</property>
          ??????? <property name="connection.password"></property>
          ???????? -->
          ??????? <property name="jdbc.fetch_size">50</property><!-- 一次讀的數據庫記錄數 -->
          ??????? <property name="jdbc.batch_size">30</property><!-- 設定對數據庫進行批量刪除 -->
          ??????? <property name="show_sql">true</property><!-- 將Hibernate發送給數據庫的sql顯示出來 -->
          ??????? <!-- Mapping files -->
          ??????? <mapping resource="cat.hbm.xml"/>
          ??? </session-factory>
          </hibernate-configuration>


          數據庫表主鍵的知識點:
          Generator 為每個 POJO 的實例提供唯一標識。一般情況,我們使用“native”。class 表示采用由生成器接口net.sf.hibernate.id.IdentifierGenerator 實現的某個實例,其中包括:


          “assigned”
          主鍵由外部程序負責生成,在 save() 之前指定一個。


          “hilo”
          通過hi/lo 算法實現的主鍵生成機制,需要額外的數據庫表或字段提供高位值來源。


          “seqhilo”
          與hilo 類似,通過hi/lo 算法實現的主鍵生成機制,需要數據庫中的 Sequence,適用于支持 Sequence 的數據庫,如Oracle。


          “increment”
          主鍵按數值順序遞增。此方式的實現機制為在當前應用實例中維持一個變量,以保存著當前的最大值,之后每次需要生成主鍵的時候將此值加1作為主鍵。這種方式可能產生的問題是:不能在集群下使用。


          “identity”
          采用數據庫提供的主鍵生成機制。如DB2、SQL Server、MySQL 中的主鍵生成機制。


          “sequence”
          采用數據庫提供的 sequence 機制生成主鍵。如 Oralce 中的Sequence。


          “native”
          由 Hibernate 根據使用的數據庫自行判斷采用 identity、hilo、sequence 其中一種作為主鍵生成方式。


          “uuid.hex”
          由 Hibernate 基于128 位 UUID 算法 生成16 進制數值(編碼后以長度32 的字符串表示)作為主鍵。


          “uuid.string”
          與uuid.hex 類似,只是生成的主鍵未進行編碼(長度16),不能應用在 PostgreSQL 數據庫中。


          “foreign”
          使用另外一個相關聯的對象的標識符作為主鍵。



          Lyyb2001
          主站蜘蛛池模板: 宁安市| 英德市| 阿尔山市| 禹州市| 金阳县| 荔浦县| 满洲里市| 遵义市| 固阳县| 菏泽市| 日土县| 绥滨县| 荆州市| 丹巴县| 佛坪县| 临猗县| 清远市| 大理市| 民勤县| 桃园市| 嘉义县| 韩城市| 喀喇| 施秉县| 巫溪县| 德钦县| 新龙县| 常德市| 南阳市| 嘉善县| 沙田区| 濮阳市| 镇江市| 九龙城区| 仁寿县| 黑山县| 云龙县| 河东区| 苏尼特左旗| 长寿区| 高邑县|