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