Identity, sequence, hilo, native, seqhilo, increment, uuid.hex, assigned,Foreign, selectmysql
簡介版:算法
identity:代理主鍵,適合於Mysql或ms sql server等支持自增的dbms,主鍵值不禁hibernate維護。sql
sequence:代理主鍵,適合於oracle等支持序列的dbms,主鍵值不禁hibernate維護,由序列產生。數據庫
increment:代理主鍵,適合於全部數據庫,由hibernate維護主鍵自增,和底層數據庫無關,可是不適合於2個或以上hibernate進程。oracle
native:代理主鍵,根據底層數據庫的具體特性選擇適合的主鍵生成策略,若是是mysql或sqlserver,選擇identity,若是是oracle,選擇sequence。ide
hilo:代理主鍵,hibernate把特定表的字段做爲hign值,生成主鍵值sqlserver
uuid.hex:代理主鍵,hibernate採用uuid 128位算法生成基於字符串的主鍵值ui
assign:適合於應用程序維護的天然主鍵。hibernate