`
zhoujianghai
  • 浏览: 434482 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

hibernate的主键生成策略(generator)详解

阅读更多

assigned”  
  主键由外部程序负责生成,在   save()   之前指定一个。  
   
   
   
  “hilo”  
  通过hi/lo   算法实现的主键生成机制,需要额外的数据库表或字段提供高位值来源
    
    
    
  “seqhilo”  
  与hilo   类似,通过hi/lo   算法实现的主键生成机制,需要数据库中的   Sequence,适用于支持   Sequence   的数据库,如Oracle。  
   
   
   
  “increment”  
  主键按数值顺序递增。此方式的实现机制为在当前应用实例中维持一个变量,以保存着当前的最大值,之后每次需要生成主键的时候将此值加1作为主键。这种方式可能产生的问题是:不能在集群下使用。  
   
   
   
  “identity”  
  采用数据库提供的主键生成机制。如DB2、SQL   Server、MySQL   中的主键生成机制。  
   
   
   
  “sequence”  
  采用数据库提供的   sequence   机制生成主键。如   Oralce   中的Sequence。  
   
   
   
  “native”  
  由   Hibernate  根据使用的数据库自行判断采用   identity、hilo、sequence   其中一种作为主键生成方式。    
   
   
   
  “uuid.hex”  
  由   Hibernate   基于128   位   UUID   算法   生成16   进制数值(编码后以长度32   的字符串表示)作为主键。  
   
   
   
  “uuid.string”  
  与uuid.hex   类似,只是生成的主键未进行编码(长度16),不能应用在   PostgreSQL   数据库中。  
   
   
   
  “foreign”  
  使用另外一个相关联的对象的标识符作为主键。  

 

注:

identity:由底层数据库生成标识符。identity是由数据库自己生成的,但这个主键必须设置为自增长,前提条件是低层数据库支持自动增长字段类型  


  increment:由hibernate管理主键,自动以递增的方式生成标识符,每次增量为1。其在每次插入前取得一个当前最大的id+1作为主键,该主键必须为Integer类型

 

转自:http://blog.sina.com.cn/s/blog_3fe0488301008xlh.html

分享到:
评论

相关推荐

    hibernate中的generator的生成方式hibernate中的generator的生成方式

    hibernate中的generator的生成方式 hibernate中的generator的生成方式

    hibernate_code_generator.rar

    hibernate_code_generator.rar 提供配置文件,自动生成java代码,配置文件,以及hibernate的.hbm映射文件

    Hibernate 课件_配置文件详解

    我培训用的 Hibernate课件, 个人能力范围内精心整理,图文并茂. 希望能对大家学习 Hibernate 提供帮助....主键生成策略generator;映射集合属性;延迟加载策略;映射组件属性;关联关系映射:双向 1-N;继承映射

    Hibernate的generator属性

    Hibernate的generator属性 本文讲述Hibernate的generator属性的意义。Generator属性有7种class,本文简略描述了这7种class的意义和用法。

    Hibernate授课指导

    五、使用Hibernate进行CRUD的操作 六、Hibernate主键生成策略(generator) 七、复(联)合主键 八、对象状态九、HQL{官方推荐的方式} 十、QBC是Query By Criteria的缩写,QBC是面向对象的查询方法。

    MyBatisGenerator详解共20页.pdf.zi

    MyBatisGenerator详解共20页.pdf.zip

    Hibernate笔记 马士兵

    <generator>元素(主键生成策略) 20 二、 annotateon方式 21 1、AUTO默认 21 2、IDENTITY 22 3、SEQUENCE 22 4、为Oracle指定定义的Sequence 22 5、TABLE - 使用表保存id值 23 三、 联合主键 24 1、xml方式 24 2、...

    mybatis-generator配置详解

    mybatis-generator配置详解:详细描述各XML标签的作用,便于快速上手使用。

    mybatis自动生成工具generator

    mybatis自动生成工具generator,提高开发效率,自动生成实体BEAN、DAO。自己试用过,完全可以使用,非常方便。

    Python生成器(Generator)详解

    主要介绍了Python生成器(Generator)详解,本文讲解了什么是生成器、简单生成器、带yield 语句的生成器、加强的生成器等内容,需要的朋友可以参考下

    hibernate配置

    hibernate是一个封装在SQL和JDBC之上的企业级应用框架 配置文件的基本结构如下: <?xml version="1.0" encoding='UTF-8'?... <generator class="主键生成策略"/> …… </hibernate-mapping>

    MyBaits-plus代码生成【Generator】

    MyBaits-plus代码生成【Generator】

    jfinal代码生成器generator

    jfinal做web开发使用,数据库表建好后,可生成表对应的Model,Service,Controller,sql模板等以及web应用相关的一些文件或者在数据库修改后一键同步model.附件中是jar包和一份使用实例代码.

    generator生成工具

    generator生成工具generator生成工具generator生成工具generator生成工具generator生成工具generator生成工具

    generator 代码生成工具

    generator 代码生成工具,生成service mapper类,方便快捷

    Mybatis Generator配置详解

    Mybatis Generator配置详解 ,可以参考一下,希望有所用。

    mybatis-generator生成

    mybatis-generator生成 mybatis-generator生成 mybatis-generator生成

    hibernate学习笔记

    主键生成器Generator 6 多对一, 一对一, 一对多, 多对多 7 hibernate多对一关联映射(Hibernate_Many2One) 7 hibernate一对一主键关联映射(单向关联Person---->IdCard) 8 hibernate一对一主键关联映射(双向关联...

    idgenerator分布式主键ID生成器

    迄今为止最全面的分布式主键ID生成器。优化的雪花算法(SnowFlake)——雪花漂移算法,在缩短ID长度的同时,具备极高瞬时并发处理能力(50W/0.1s)。 原生支持 C#/Java/Go/Rust/C/SQL 等多语言,且提供 PHP 扩展及 ...

    代码生成工具generator.xml文件

    generator是自动生成代码的工具。可以生成实体类,xml文件,dao层代码。具体的生成方法,个人博客里面有基本文章。谢谢。

Global site tag (gtag.js) - Google Analytics