日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
Hibernate的基本標(biāo)簽和映射

hibernate基本映射標(biāo)簽和屬性

創(chuàng)新互聯(lián)專(zhuān)注于企業(yè)全網(wǎng)營(yíng)銷(xiāo)推廣、網(wǎng)站重做改版、博愛(ài)網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5頁(yè)面制作、成都商城網(wǎng)站開(kāi)發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為博愛(ài)等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。

1.標(biāo)簽

 
 
 
  1.          schema="schemaName"                          (1)  
  2.          catalog="catalogName"                        (2)  
  3.          default-cascade="cascade_style"              (3)  
  4.          default-access="field|property|ClassName"    (4)  
  5.          default-lazy="true|false"                    (5)  
  6.          auto-import="true|false"                     (6)  
  7.          package="package.name"                       (7)  
  8.  /> 

(1) schema (可選): 數(shù)據(jù)庫(kù)schema的名稱(chēng)。

(2) catalog (可選): 數(shù)據(jù)庫(kù)catalog的名稱(chēng)。

(3) default-cascade (可選 - 默認(rèn)為 none): 默認(rèn)的級(jí)聯(lián)風(fēng)格。

(4) default-access (可選 - 默認(rèn)為 property): Hibernate用來(lái)訪問(wèn)所有屬性的策略。可以通過(guò)實(shí)現(xiàn)PropertyAccessor接口 自定義。

(5) default-lazy (可選 - 默認(rèn)為 true): 指定了未明確注明lazy屬性的Java屬性和集合類(lèi), Hibernate會(huì)采取什么樣的默認(rèn)加載風(fēng)格。

(6) auto-import (可選 - 默認(rèn)為 true): 指定我們是否可以在查詢語(yǔ)言中使用非全限定的類(lèi)名(僅限于本映射文件中的類(lèi))。

(7) package (可選): 指定一個(gè)包前綴,如果在映射文檔中沒(méi)有指定全限定的類(lèi)名, 就使用這個(gè)作為包名。 假若有兩個(gè)持久化類(lèi),它們的非全限定名是一樣的(就是兩個(gè)類(lèi)的名字一樣,所在的包不一樣),應(yīng)該設(shè)置auto-import="false".如果把一個(gè)“import”的名字對(duì)應(yīng)兩個(gè)類(lèi),Hibernate會(huì)拋出一個(gè)異常hibernate-mapping元素允許嵌套多個(gè)映射,但***的做法是一個(gè)持久化類(lèi)對(duì)應(yīng)一個(gè)映射文件,并以持久化的超類(lèi)名稱(chēng)命名。如:Xxx.hbm.xml

2.標(biāo)簽

 
 
 
  1.         name="ClassName"                              (1)  
  2.         table="tableName"                             (2)  
  3.         dynamic-update="true|false"                   (3)  
  4.         dynamic-insert="true|false"                   (4)  
  5.         optimistic-lock="none|version|dirty|all"      (5)  
  6.         lazy="true|false"                             (6)  
  7. /> 

(1)name(可選):持久化類(lèi)(或者接口)的Java全限定名。如果這個(gè)屬性不存在,Hibernate將假定這是一個(gè)非POJO的實(shí)體映射

(2)table(可選-默認(rèn)是類(lèi)的非全限定名):對(duì)應(yīng)數(shù)據(jù)庫(kù)表名,生成DDL時(shí)數(shù)據(jù)表名,如果省略,則名稱(chēng)同持久化類(lèi)名稱(chēng)

(3)dynamic-update(可選,默認(rèn)為false):指定用于UPDATE的SQL將會(huì)在運(yùn)行時(shí)動(dòng)態(tài)生成,只更新那些被改過(guò)的字段

(4)dynamic-insert(可選,默認(rèn)為false):指定用于insert的sql將會(huì)在運(yùn)行時(shí)動(dòng)態(tài)生成,并且只包含那些非空字段

(5) optimistic-lock(樂(lè)觀鎖定) (可選,默認(rèn)是version): 決定樂(lè)觀鎖定的策略。

(6) lazy (可選): 通過(guò)設(shè)置lazy="false", 所有的延遲加載(Lazy fetching)功能將被全部禁用(disabled)。

3.標(biāo)簽

標(biāo)簽必須配置在標(biāo)簽的***個(gè)位置。由一個(gè)字段構(gòu)成主鍵,元素定義了該屬性到數(shù)據(jù)庫(kù)表主鍵字段的映射

 
 
 
  1.     type="typename"             (2)  
  2.     column="column_name">        (3)  
  3.     length="length">             (4)  
  4.        
  5.  

(1)name:實(shí)體類(lèi)的屬性名字

(2)type:標(biāo)識(shí)Hibernate類(lèi)型的名字(省略則使用Hibernate默認(rèn)類(lèi)型),也可以自己配置類(lèi)型(integer,long,short,float,double,character,byte,boolean,yes_no,true_false)

(3)column(可選-默認(rèn)為屬性名):主鍵字段的名字(省略則取name為字段名)

(4)length(可選):當(dāng)type為varchar時(shí),設(shè)置字段長(zhǎng)度

元素(主鍵生成策略)

主鍵生成策略必須配置,用來(lái)為該持久化類(lèi)的實(shí)例生成唯一的標(biāo)識(shí)。

uuid:

用一個(gè)128-bit的UUID算法生成字符串類(lèi)型的標(biāo)識(shí)符,這在一個(gè)網(wǎng)絡(luò)中是唯一的(使用了IP地址),UUID被編碼為一個(gè)32位16進(jìn)制數(shù)字的字符串,它的生成是由Hibernate生成,一般不會(huì)重復(fù)UUID包含:IP地址,JVM的啟動(dòng)時(shí)間,系統(tǒng)時(shí)間和一個(gè)計(jì)算器值。

native:

根據(jù)底層數(shù)據(jù)庫(kù)的能力選擇identity,sequence或者h(yuǎn)ilo中的一個(gè)(數(shù)據(jù)庫(kù)自增)

assigned:

讓程序在save()之前為對(duì)象分配一個(gè)表示符。這是元素沒(méi)有指定時(shí)的默認(rèn)生成策略。(如果是手動(dòng)分配,則需要設(shè)置此配置)

5.標(biāo)簽

用于映射普通屬性到表字段

 
 
 
  1.      name="propertyName" 
  2.      column="column_name" 
  3.      type="typename" 
  4.      length="" 
  5.      unique="" 
  6.      not-null="" 
  7.  >  
  8.  

注:如果實(shí)體類(lèi)和實(shí)體類(lèi)中的屬性和SQL中的關(guān)鍵字重復(fù),必須采用table或column重新命名

6.Hibernate完整映射實(shí)例:

 
 
 
  1.  
  2.     "-//Hibernate/Hibernate Mapping DTD 3.0//EN" 
  3.     "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">  
  4.  
  5.       
  6.       
  7.           
  8.           
  9.               
  10.               
  11.           
  12.           
  13.           
  14.           
  15.           
  16.           
  17.       
  18.  

原文鏈接:http://blog.csdn.net/fengxuezhiye/article/details/7368865


文章題目:Hibernate的基本標(biāo)簽和映射
路徑分享:http://www.dlmjj.cn/article/cocdgse.html