`

Hibernate中自带ID的generator的含义

    博客分类:
  • J2EE
阅读更多
1、identity:用于MySql数据库。特点:递增
 <id name=\"id\" column=\"id\">
    <generator class=\"identity\"/>
 </id>

  注:对于MySql数据库使用递增序列时需要在建表时对主键指定为auto_increment属性。

2、sequence:用于Oracle数据库
 <id name=\"id\" column=\"id\">
   <generator class=\"sequence\">
     <param name=\"sequence\">序列名</param>
   </generator>
 </id>


3、native:跨数据库时使用,由底层方言产生。
Default.sequence为hibernate_sequence
 <id name=\"id\" column=\"id\">
   <generator class=\"native\"/>
 </id>

  注:使用native时Hibernate默认会去查找Oracle中的hibernate_sequence序列。
  如果Oracle中没有该序列,连Oracle数据库时会报错。

4、hilo:通过高低位合成id,先建表hi_value,再建列next_value。必须要     
       有初始值。
 <id name=\"id\" column=\"id\">
    <generator class=\"hilo\">
      <param name=\"table\">high_val</param>
       <param name=\"column\">nextval</param>
      <param name=\"max_lo\">5</param>
    </generator>
 </id>


5、sequencehilo:同过高低位合成id,建一个sequence序列,不用建表。
<id name=\"id\" column=\"id\">
<generator class=\"hilo\">
<param name=\"sequence\">high_val_seq</param>
<param name=\"max_lo\">5</param>
</generator>
</id>

6、assigned:用户自定义id;
<id name=\"id\" column=\"id\">
<generator class=\"assigned\"/>
</id>


7、foreign:用于一对一关系共享主健时,两id值一样。
分享到:
评论

相关推荐

    hibernate常见异常

    * 使用 session.merge(object),Hibernate 里面自带的方法,推荐使用。 了解 Hibernate 中的常见异常是非常重要的。通过了解这些异常的原因和解决方案,我们可以更好地使用 Hibernate,提高开发效率和质量。

    Hibernate资料

    4. **事务管理**:Hibernate 自带了对事务的支持,简化了事务处理逻辑的编写。 5. **缓存机制**:提供了二级缓存支持,有效提升了数据查询性能。 #### 二、Hibernate 开发步骤详解 1. **编写实体类**:实体类需要...

    Java框架hibernate基础教程,简单上手。

    4. **可扩展性强**:如果Hibernate自带的功能无法满足需求,开发者可以通过编写自定义的插件或扩展来进行增强。 **三、Hibernate的下载与安装** 要使用Hibernate,首先需要从其官方网站下载最新版本的Hibernate框架...

    快速Java和Oracle集成SSH开发注意问题.pdf

    - 需要在Hibernate配置文件中正确配置Oracle数据库相关的属性,如连接字符串、驱动类、方言等: ```xml &lt;property name="hibernate.dialect"&gt;org.hibernate.dialect.Oracle10gDialect &lt;property name="hibernate...

    表生成器 @TableGenerator

    `@TableGenerator` 是Hibernate(一个流行的JPA实现)中的一个注解,它允许开发者定义一个数据库表来存储生成的ID序列,而不是依赖数据库自带的序列或者主键自增功能。这在分布式系统或多数据库环境中有其优势,因为...

    nhibernate 类文件 映射文件 生成工具 NGen

    NGen(Native Image Generator)是.NET Framework自带的一个工具,它的主要作用是预先编译.NET应用程序,生成本机图像,从而提高应用程序的启动速度和性能。 标题中提到的"nhibernate 类文件 映射文件 生成工具 ...

    nhibernate reference

    - **3.4 NHibernate 提供的 ADO.NET 连接**:对比上一种方式,这里讲述了如何使用 NHibernate 自带的连接管理器。 - **3.5 可选配置属性**: - **3.5.1 SQL 方言**:根据不同数据库的支持情况选择合适的 SQL 方言。...

Global site tag (gtag.js) - Google Analytics