Flyingis

          Talking and thinking freely !
          Flying in the world of GIS !
          隨筆 - 156, 文章 - 16, 評論 - 589, 引用 - 0
          數(shù)據(jù)加載中……

          Hibernate學習心得--映射對象標識符

              作者:Flyingis

              在關系數(shù)據(jù)庫中的主鍵可分為自然主鍵(具有業(yè)務含義)和代理主鍵(不具有業(yè)務含義),其中代理主鍵可以適應不斷變化的業(yè)務需求,因此更加流行。代理主鍵通常為整數(shù)類型,與此對應,在持久化類中野應該把OID定義為整數(shù)類型,Hibernate允許把OID定義為short、int和long類型,以及它們的包裝類型。

              Hibernate提供了幾種內(nèi)置標識符生成器,每一種標識符生成器都有它的使用范圍,應該根據(jù)所使用的數(shù)據(jù)庫和Hibernate應用的軟件架構來選擇合適的標識符生成器。下面是幾種常用數(shù)據(jù)庫系統(tǒng)可使用的標識符生成器:

          MYSQL: identity increment hilo native
          MS SQL Server: identity increment hilo native
          Oracle: sequence seqhilo hilo increment native
          夸平臺開發(fā): native

              OID是為持久化層服務的,它不具備業(yè)務含義,而域?qū)ο笪挥跇I(yè)務邏輯層,用來描述業(yè)務模型。因此,在域?qū)ο笾袕娦屑尤氩痪邆錁I(yè)務含義的OID,可以看作是持久化層對業(yè)務邏輯層的一種滲透,但這種滲透是不可避免的,否則Hibernate就無法建立緩存中的對象與數(shù)據(jù)庫中記錄的對應關系。

              當然,映射中還包括自然主鍵的映射方案。對于從頭設計的關系數(shù)據(jù)庫模型,應該優(yōu)先考慮使用代理主鍵。

          posted on 2005-11-14 10:43 Flyingis 閱讀(699) 評論(0)  編輯  收藏 所屬分類: Hibernate

          主站蜘蛛池模板: 寿阳县| 威信县| 绥阳县| 景东| 白银市| 建水县| 凤冈县| 滦平县| 隆安县| 桐城市| 通化县| 三穗县| 平安县| 海伦市| 锦州市| 潍坊市| 商河县| 靖江市| 泰兴市| 左云县| 张家川| 伊通| 大荔县| 罗江县| 勃利县| 治多县| 民县| 白山市| 安多县| 浦城县| 策勒县| 呼和浩特市| 句容市| 永川市| 石家庄市| 阳江市| 轮台县| 石楼县| 延吉市| 连云港市| 万载县|