Hibernate映射(二)

本文详细介绍了Hibernate的主键生成策略,包括increment、identity、sequence、hilo等,并探讨了如何使用@GenericGenerator注解进行自定义设置。此外,还详细讲解了Hibernate映射集合属性的方法,包括@ElementCollection、@CollectionTable和@JoinColumn的使用,以及如何处理不同类型的集合元素。最后,讨论了有序集合SortedSet和SortedMap的映射,包括自然排序和自定义排序策略。
摘要由CSDN通过智能技术生成

使用Hibernate的主键生成策略

JPA标准注解只支持AUTO、IDENTITY、SEQUENCE、TABLE。Hibernate支持更多的主键生成策略。使用@GenericGenerator注解,定义生成主键生成器

@GenericGenerator,属性:

name:设置主键生成器的名称,名称被@GeneratedValue的generator属性引用
strategy:设置该主键生成器的主键生成策略

strategy属性指定如下常用的主键生成策略:
1、increment:为long、shor或int类型主键生成唯一标识
2、identity:返回标识属性long、shor或int
3、sequence:(Oracle、DB2)提供Sequence支持的数据表中适用。返回标识属性是long、short或int类型
4、hilo:使用一个高/低位算法高效地生成long、short或int类型的标识符
5、seqhilo:使用一个高/低位算法高效地生成long、short或int类型的标识符。主键历史状态保存在Sequence中
6、uuid:用一个128位的UUID算法生成字符串类型的标识符
7、guid:在SQL Server和MySQL中使用数据库生成的GUID字符串
8、native:根据底层数据库能力选择identity、sequence或hilo中一个
9、assigned:让应用程序在save()之前为对象分配一个标识符
10、select:通过数据库触发器选择某个

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值