Hibernate内置标识符生成器
来源:互联网 发布:宁波数据工场 编辑:程序博客网 时间:2024/05/21 19:34
increment:适用于代理主键,由Hibernate自动以增长的方式生成标识符,增量为1。
注:使用increment,插入时,在生成的SQL语句中会有ID列。
Example:
适用范围:
Example:
适用范围:
Example:
id_seq
适用范围:
Example:
hi_value
next_value
100
注:其中high值存放在hi_value表的next_value字段中。
适用范围:
native:适用于代理主键,根据底层数据库对标识符的支持能力,自动选择identity、sequence或hilo。native能自动识别底层数据库提供的生成标识符的机制。如果数据库为sql/mysql则为identity;如果为Oracle则为sequence。
Example:
适用范围:
Example:
注:使用assigned标识符生成器时,无法使用saveOrUpdate来实现save/update。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/82195/showart_1657508.html
注:使用increment,插入时,在生成的SQL语句中会有ID列。
Example:
适用范围:
- 由于increment生成标识符的机制不依赖于底层数据库系统,因此它适用于所有的数据库系统。
- 适用于只有单个Hibernate应用进程访问同一个数据库的场合,如果Hibernate 运行在多个应用服务器上,increment标识符生成器工作会失效。
- OID(Object identifier)必须为short、int、long类型,如果定义为其他类型,则会抛出异常IdentifierGenerationException。
Example:
适用范围:
- 由于identity生成标识符的机制依赖于底层数据库系统,因此要求底层数据库系统必须支持自动增长字段类型。支持自动增长的数据库有:DB2、SQL Server、MySql、Sybase、HSQLDB、Informix等。
- OID必须为short、int、long类型。
Example:
id_seq
适用范围:
- 由于sequence生成标识符依赖于底层数据库系统的序列,因此要求底层数据库系统必须支持序列。支持序列的数据库包括:Oracle、DB2等。
- OID必须为short、int、long类型。
Example:
hi_value
next_value
100
注:其中high值存放在hi_value表的next_value字段中。
适用范围:
- 由于hilo生成标识符的机制不依赖于底层数据库系统,因此适用于所有的数据库系统。
- OID必须为short、int、long类型。
native:适用于代理主键,根据底层数据库对标识符的支持能力,自动选择identity、sequence或hilo。native能自动识别底层数据库提供的生成标识符的机制。如果数据库为sql/mysql则为identity;如果为Oracle则为sequence。
Example:
适用范围:
- 由于native能根据底层数据库系统的类型自动选择合适的标识符生成器,因此适合跨数据库平台开发。即同一个Hiberante应用需要连接多种数据库系统的场合。
- OID类型。
Example:
注:使用assigned标识符生成器时,无法使用saveOrUpdate来实现save/update。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/82195/showart_1657508.html
- Hibernate内置标识符生成器
- Hibernate内置标识符生成器
- Hibernate内置标识符生成器
- Hibernate提供的内置标识符生成器
- Hibernate内置对象标识符(OID)生成器
- Hibernate内置的持久化标识符生成器
- Hibernate提供的几种内置标识符生成器
- 【Hibernate学习笔记】内置标识符生成器的用法
- Hibernate标识符生成器
- hibernate内置生成器
- Hibernate的ID标识符生成器
- Hibernate的ID标识符生成器
- hibernate之标识符生成器用法
- 7.1 Hibernate:内置生成器 -- assigned
- 7.2 Hibernate:内置生成器 -- foreign
- 7.3 Hibernate:内置生成器 -- guid
- Hibernate的ID的标识符生成器
- Hibernate的ID的标识符生成器
- 该低头时就低头
- JAVA面试题解惑系列(一)——类的初始化顺序
- 映射一对多关联关系
- JAVA面试题解惑系列(二)——到底创建了几个String对象?
- 前行
- Hibernate内置标识符生成器
- Hibernate映射组成关系
- Hibernate中持久化类方法的两个调用者
- 对象持久化的几种模式
- session实现在线统计(列表)
- URL传递中文参数
- JAVA面试题解惑系列(三)——变量(属性)的覆盖
- hibernate学习笔记(三)
- JAVA面试题解惑系列(四)——final、finally和finalize的区别