hibernate注解總結(jié)(一)

hibernate注解總結(jié)(一)

ID:30768542

大?。?8.50 KB

頁數(shù):3頁

時(shí)間:2019-01-03

hibernate注解總結(jié)(一)_第1頁
hibernate注解總結(jié)(一)_第2頁
hibernate注解總結(jié)(一)_第3頁
資源描述:

《hibernate注解總結(jié)(一)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫

1、Hibernate注解總結(jié)(一)1?類級(jí)別注解@Entity映射實(shí)體類@Table映射數(shù)旬庫表@Entity(name="tableNameH)?必須,注解將一個(gè)類聲明為一個(gè)實(shí)體bean。屬name-可選,對(duì)應(yīng)數(shù)據(jù)庫中的一個(gè)表。若表名與實(shí)體類名相同,則可以省略。@Table(name=""/catalog="",schema="")-可選,通常和@Entity配合使用,只能標(biāo)注在實(shí)體的class定義處,表示實(shí)體對(duì)應(yīng)的數(shù)據(jù)庫表的信息。屬性:name-可選,表示表的名稱,默認(rèn)地,表名和實(shí)體名稱一致,只冇在不一致的情況下才需要指定表名catal

2、og-可選,表示Catalog名稱,默認(rèn)為CatalogC").schema?可選,表示Schema名稱,默認(rèn)為Schema("").2.屬性級(jí)別注解@ld映射生成主鍵@Version定義樂觀鎖@Column映射表的列@Transient定義暫態(tài)屬性2.1與主鍵相關(guān)注解@ld-必須,定義了映射到數(shù)據(jù)庫表的主鍵的屬性,一個(gè)實(shí)體只能有一個(gè)屬性被映射為主鍵,置于getXxxx()前。@GeneratedValue(strategy=GenerationType,generator="")-可選,用于定義主鍵牛-成策略。屬性:Strategy-表

3、示主鍵生成策略,取值有:GenerationType.AUTO?根據(jù)底層數(shù)據(jù)庫口動(dòng)選擇(默認(rèn)),若數(shù)據(jù)庫支持口動(dòng)增長類型,則為口動(dòng)增長。GenerationType.lNDENTITY?根據(jù)數(shù)據(jù)庫的Identity字段生成,支持DB2、MySQL、MS、SQLServer.SyBase與HyperanoicSQL數(shù)據(jù)庫的Identity類型主鍵。GenerationType.SEQUENCE-使用Sequence來決定主鍵的取值,適合Oracle、DB2等支持Sequence的數(shù)據(jù)庫,一般結(jié)合@SequenceGenerator使川。(O

4、racle沒有自動(dòng)增長類型,只能用Sequence)GenerationType.TABLE?使用指定表來決定主鍵取值,結(jié)合@TableGenerator使用。如:@ld@TableGenerator(name="tab_cat_gen",allocationSize=l)@GeneratedValue(Strategy=GenerationType.Table)Generator-表示主鍵生成器的名稱,這個(gè)屬性通常和ORM框架相關(guān),例如:Hibernate可以指定uuid等主鍵生成方式@SequenceGenerator—注解聲明了一個(gè)

5、數(shù)據(jù)庫序列。屬性:name-表示該表主鍵生成策略名稱,它被引用在@GeneratedValue屮設(shè)置的“generator”值屮。sequenceName?表示生成策略用到的數(shù)據(jù)庫序列名稱。initialvalue-表示主鍵初始值,默認(rèn)為0.allocationsize-每次主鍵值增加的大小,例如設(shè)置成1,則表示每次創(chuàng)建新記錄后自動(dòng)加1,默認(rèn)為50.示例:@ld@GeneratedValues(strategy=StrategyType.SEQUENCE)publicintgetPk(){returnpk;}Hibernate的訪問類型為

6、field時(shí),在字段上進(jìn)行注解聲:訪問類型為property時(shí),在getter方法上進(jìn)行注釋聲明。2.2與非主鍵相關(guān)注解@Version?可以在實(shí)體bean屮使用@Version注解,通過這種方式可添加對(duì)樂觀鎖定的支持@Basic■用于聲明屬性的存取策略:@Basic(fetch=FetchType.EAGER)即時(shí)獲取(默認(rèn)的存取策略)@Basic(fetch=FetchType.LAZY)延遲獲取(?Temporal?用于定義映射到數(shù)據(jù)庫的吋間精度:@Temporal(TemporalType=DATE)LI期@Temporal(Te

7、mporalType=TIME)時(shí)間@Temporal(TemporalType=TIMESTAMP)兩者兼具@Column-可將屬性映射到列,使用該注解來覆蓋默認(rèn)值,@Column描述了數(shù)據(jù)庫表屮該字段的詳細(xì)定義,這對(duì)于根據(jù)JPA注解生成數(shù)據(jù)庫表結(jié)構(gòu)的工具非常有作用。屬性:name-可選,表示數(shù)據(jù)庫表中該字段的名稱,默認(rèn)情形屬性名稱一致nullable-可選,表示該字段是否允許為null,默認(rèn)為trueunique?可選,表示該字段是否是唯一標(biāo)識(shí),默認(rèn)為falselength-可選,表示該字段的大小,僅對(duì)String類型的字段有效,默認(rèn)

8、值255.insertable-可選,表示在ORM框架執(zhí)行插入操作時(shí),該字段是否應(yīng)出現(xiàn)INSETRT語句中,默認(rèn)為trueupdateable?可選,表示在ORM框架執(zhí)行更新操作時(shí),該字段是否

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。