Hibernate複習之映射對象標識符(OID)

今日目錄:

1、Hibernate 用對象標識符(OID)

2、Hibernate 對象標識符生成策略

一、Hibernate 用對象標識符(OID)

Hibernate複習之映射對象標識符(OID)

Hibernate複習之映射對象標識符(OID)

二、Hibernate 對象標識符生成策略

主鍵的分類 業務主鍵 VS 代理主鍵 代理主鍵是不具有業務性的;

1、increment 由 Hibernate 自動以遞增的方式生成標識符,適用代理主鍵;

2、identity 由底層數據庫生成標識符;適用代理主鍵;

3、sequcence 由 Hibernate 根據底層數據庫的序列來生成標識符;適用代理主鍵;(MySQL不適用)

4、hilo Hibernate 根據 high/low 算法來生成標識符。適用代理主鍵

5、native 根據底層數據庫對自動生成標識符的支持能力,來選擇 identity,sequence 或 hilo;適用代理主鍵;

使用increment生成的表是沒使用auto increment的,而使用identity或native生成的表就使用了auto increment,推薦使用native。

如:

Hibernate複習之映射對象標識符(OID)

Hibernate複習之映射對象標識符(OID)

@GeneratedValue註解中的”generator”屬性要與@GenericGenerator註解中name屬性一致,strategy屬性表示hibernate的主鍵生成策略

如果想知道跟多資源,請關注微信公眾號:Java學習之樂

在後臺回覆:Java或工具,能獲得就業班的學習資料,從此走向人生巔峰


分享到:


相關文章: