hibernate注解總結(一)

hibernate注解總結(一)

ID:30768542

大?。?8.50 KB

頁數(shù):3頁

時間:2019-01-03

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

《hibernate注解總結(一)》由會員上傳分享,免費在線閱讀,更多相關內容在工程資料-天天文庫

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

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

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

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

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

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

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

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

當前文檔最多預覽五頁,下載文檔查看全文

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

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