您的位置:首页 > 其它

Hibernate主键生成策略选择

2016-03-13 15:35 211 查看

increment

1、由Hibernate自动生成,Hibernate会获取映射表中最大的主键id,在其基础上加1,不依赖底层数据库

2、type类型必须映射为long,int,short

identity

1.由底层数据库来生成标识符,如果底层数据库不支持自动增长将出错
2.type类型必须映射为long,int,short

sequence

1.有底层数据库来生成标识符,如果底层数据库不支持系列将出错(Mysql就不支持)
2.type类型必须映射为long,int,short



native

1.根据底层数据库的支持方式来生成标识符
2.type类型必须为long,int,short
ps:native用的比较多



uuid

1.hibernate自动生成不重复的32位字符串作为主键
2.type的类型为string



assigned

1.编写代码传值给数据库作为主键
2.type的类型不固定,只要符合对应的类型,不出现错误即可



总结:

假如要自动生成相应的主键选择native比较好
假如指定的数据可以作为主键,可以选择assigned,比如学生的学号
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: