hibernate主键映射 主键生成

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会找到当前主键的最大值 插入数据的时候最大值加一。缺点:效率低,线程安全(因为要取最大值)--这个一般不用

。。。。。。。。。。。。。。。。。。

你可能感兴趣的:(oracle,sql,mysql,Hibernate,db2)