自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Hibernate主鍵生成方式淺析

開發(fā) 后端
本文向您介紹Hibernate主鍵的生成方式,包括與底層數(shù)據(jù)庫無關(guān)的increment、便于數(shù)據(jù)庫間移植的native等共8種機制和算法。

1 increment:

當(dāng)向數(shù)據(jù)庫中插入新的紀(jì)錄時,Hibernate主鍵會自動增長1。increment主鍵生成方式的特點是與底層數(shù)據(jù)庫無關(guān)性,大部分?jǐn)?shù)據(jù)庫如 Mysql,MSSQL 和ORACLE等都支持increament生成方式。increment方式的不足之處是當(dāng)多個線程并發(fā)對數(shù)據(jù)庫表進行寫操作時,可能出現(xiàn)相同的主鍵值,發(fā)生主鍵重復(fù)的沖突,因此多線程并發(fā)操作時,不應(yīng)該使用此方法

2 identity:

使用數(shù)據(jù)庫提供的主鍵生成機制,自動為主鍵賦值,indentity方式的特點是與底層數(shù)據(jù)庫無關(guān)性,不便于不同數(shù)據(jù)庫之間的移植。identity的優(yōu)點是不會發(fā)生 increment方式的并發(fā)錯做問題。

3 native:

由hibernate根據(jù)不同的數(shù)據(jù)庫方言,自動選擇不同的主鍵生成方式,native的優(yōu)點是與底層性無關(guān),便于不同數(shù)據(jù)庫之間的移植,由Hibernate根據(jù)不同數(shù)據(jù)庫選擇主鍵的生成方式

4 uuid.hex:

采用基于128位的算法生成***值,并編制成32位長度的***字符串作為主鍵值,uuid.hex的優(yōu)點是支持大部分?jǐn)?shù)據(jù)庫,缺點就是要占用較大的存儲空間。

5 uuid.string

使用UUID算法,UUID被編碼為一個16個字符長的任意ASCII字符組成的字符串。不能再PostgreSQL數(shù)據(jù)庫中使用。uuid.string同uuid.hex類似,需要占很大的存儲空間。

6 hilo:

通過一定的算法生成Hibernate主鍵主鍵,需要一個表來保存額外的主鍵信息。這樣生成的標(biāo)識符只在特定的數(shù)據(jù)庫是***的,在使用JTA(Java分布式事務(wù)) 獲得鏈接或用戶自定義提供的鏈接中,不要使用這種生成器。hilo方式需要維護表信息,因此對數(shù)據(jù)的影響的要率會造成一定影響。

7 sequence:

在ORACLE等數(shù)據(jù)庫中使用sequence生成主鍵。sequence的特點是于數(shù)據(jù)庫的相關(guān)性,seqhio要求底層能支持sequence,列如Oracle。

8 seqhio:

通過一定的算法來生成Hibernate主鍵主鍵,采用給定的數(shù)據(jù)庫的sqlsequence開生成外鍵。ceqhio方式的特點外還具有Hil哦的大。

 

【編輯推薦】

  1. 強人Hibernate文檔筆記(上)
  2. 強人Hibernate文檔筆記(中)
  3. 強人Hibernate文檔筆記(下)
  4. Hibernate優(yōu)化方法解析
  5. hibernate 重復(fù)導(dǎo)入問題處理
責(zé)任編輯:佚名 來源: JavaEye
相關(guān)推薦

2009-09-28 10:52:33

Hibernate主鍵主鍵生成

2009-09-25 13:33:43

Hibernate主鍵

2009-09-22 09:31:15

Hibernate主鍵

2009-06-17 14:55:26

Hibernate數(shù)據(jù)

2009-09-24 10:50:31

Hibernate主鍵

2009-09-24 10:07:21

Hibernate M

2009-06-29 08:56:49

Hibernate主鍵生成主鍵

2009-06-29 08:50:20

Hibernate主鍵

2009-12-29 10:32:24

WPF Listbox

2009-09-28 17:23:51

Hibernate E

2009-09-23 14:23:51

Hibernate主鍵

2012-02-03 10:07:04

HibernateJava

2009-09-21 18:13:11

Hibernate S

2009-09-23 17:28:55

Hibernate C

2009-09-23 10:19:08

Hibernate分頁

2009-09-21 12:50:34

Hibernate架構(gòu)

2009-09-21 17:23:49

Hibernate使用

2009-09-22 13:09:06

Hibernateorm框架

2009-09-24 11:41:46

Hibernate延遲

2009-09-25 14:12:16

Hibernate繼承
點贊
收藏

51CTO技術(shù)棧公眾號