主键生成策略

来源:互联网 发布:mac怎么下载photoshop 编辑:程序博客网 时间:2024/05/29 07:50

hibernate中主键生成策略generator标签中的class属性里面有很多的值,但我们通常主要使用两个

第一个:native

- 根据使用的数据库帮选择使用不同的值

第二个:uuid

- 自动生成uuid

- 如果主键自动增长,类型必须是int类型

- 如果uuid时候,类型varchar类型

identity:使用数据库的自动增长策略,不是所有数据库都支持,比如oracle就不支持。

sequence:在 DB2,PostgreSQL,Oracle,SAP DB,McKoi 中使用序列(sequence)在使用Oracle数据库时可以使用这一个。

hilo:使用高低位算法生成主键值。只需要一张额外表,所有的数据都支持。

native:根据底层数据库的能力选择 identity、sequence 或者 hilo中的一个。

assigned:手工指定主键值。

uuid:由Hibernate自动生成UUID并指定为主键值。