Hibernate中的主键生成策略

来源:互联网 发布:java除法取整 编辑:程序博客网 时间:2024/05/01 09:17

在hibernate中主键的生成策略分为数字、字符串、外键

一:数字

         <1>:increment

                     由Hibernate框架生成,会去查询数据库中的最大值,适应任何数据库

         <2>:sequence

                  由数据库的序列(sequence)生成,只适应Oracle数据库

                        <generator class="sequence">

                             <span name="sequence" >数据库中的序列名<param/>

                        <generator/>

         <3>:identity

                     Sqlserver的自动增长方式    

           <4>:native      

                     由框架判断底层数据库的类型,并由数据库生成(如果底层是Oracle数据库,数据库中必须创建序列,并且序列的名字必须为Hibernate_sequence)    


二:字符串

          <1>:assigned

                      由程序中指定,手动设置,也就是手动设置的id值

          <2>:uuid

                       由框架生成32位的字符串,作为表的主键,适应于所有的数据库

三:外键         

            foreign