identity(mysql,sql server2000)
sequence(oracle,db2)需要指定sequence是谁?
<generator class="sequence">
<param name="sequence"></param>
</generator>
native(根据方言来选择 假如是MySQL那么就是identity 如果是Oracle则是sequence
所以native必须要写 <param name="sequence"></param>以备准备遇到Oracle 如果遇到MySQL这个参数无效 但是也要写)
以上是常用的
uuid缺点是:这个主键是字符串
increment:假如没有任何办法(没有自动增加或者sequence都没有)添加主键,hibernate会找到当前主键的最大值 插入数据的时候最大值加一。缺点:效率低,线程安全(因为要取最大值)--这个一般不用
。。。。。。。。。。。。。。。。。。
主键生成策略详解
本文详细介绍了在不同数据库中如何设置主键生成策略,包括MySQL的identity、Oracle的sequence等,并对比了各种策略的特点和适用场景。

被折叠的 条评论
为什么被折叠?



