`
zhouyangchenrui
  • 浏览: 81821 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

Hibernate注解映射sequence时出现无序增长问题

阅读更多
    通过Hibernate注解的方式映射oracel数据库的sequence主键生成器时,出现增加数据时sequence无序增长的问题,配置如下:
@SequenceGenerator(name = "SEQ_DM_SERVICE_MODEL", sequenceName = SEQ_DM_SERVICE_MODEL")
@Id
@GeneratedValue(strategy = SEQUENCE, generator = "SEQ_DM_SERVICE_MODEL")
@Column(name = "SERVICE_MODEL_ID", unique = true, nullable = false, precision = 10, scale = 0)
public Long getId() {
	return this.id;
}

此时主键id的增长是按照hibernate自动处理的方式,而并非数据库中定义的sequence来处理。必须加allocationSize=1,initialValue=1这两项配置才可以解决上述问题。如下:
@SequenceGenerator(name = "generator",allocationSize=1,initialValue=1, sequenceName = "SEQ_DM_SERVICE_MODEL")
分享到:
评论

相关推荐

    hibernate的多种映射关系

    Hibernate 是一个流行的对象关系映射(ORM)...正确配置映射关系能够提升应用程序的性能和可维护性,避免出现不必要的 N+1 查询问题,并简化数据库交互的复杂性。在实际开发中,应根据业务需求灵活选择合适的映射方式。

    hibernate注解处理映射关系共14页.pdf.zip

    本资料“hibernate注解处理映射关系共14页.pdf.zip”显然是一个关于Hibernate注解使用的详细教程,涵盖了14页的内容。以下是基于该主题的详尽知识点解析: 1. **Hibernate概述**:Hibernate是Java平台上的一个开源...

    myeclipse自动生成hibernate映射文件

    在开发Java应用,尤其是涉及到数据库交互的时候,Hibernate作为一款强大的对象关系映射(ORM)框架,极大地简化了数据库操作。而MyEclipse作为一款集成开发环境,提供了对Hibernate的全面支持,包括自动生成...

    常用 Hibernate 映射配置说明.doc

    `Generator-Class`子节点指定主键生成策略,常见的有`increment`(适用于自增主键)、`identity`(依赖数据库的自动增长功能)、`sequence`(使用序列生成主键)、`uuid.hex`或`uuid.string`(生成UUID)。...

    Hibernate映射文件主键的生成

    在Hibernate的映射文件中,可以配置`<generator class="sequence">`,并指定序列名。例如: ```xml <generator class="sequence"> <param name="sequence">MY_SEQ ``` 或者在注解中: ```java @...

    Hibernate映射笔记

    ### Hibernate映射笔记详解 #### Hibernate映射文件与配置关系 Hibernate映射是ORM(对象关系映射)框架中的一项关键技术,它允许开发者在数据库表和Java对象之间建立映射关系,从而简化了数据访问层的开发工作。...

    Hibernate 注解说明文档

    本文档将深入探讨Hibernate注解的使用,帮助开发者更好地理解和利用这些注解来实现对象关系映射(ORM)。 一、Hibernate注解基础 Hibernate注解是一种元数据方式,用于在Java类和属性上声明数据库映射信息,从而...

    hibernate的映射文件配置

    标题:“Hibernate的映射文件配置” 描述:本文深入解析了Hibernate映射文件配置的核心概念,重点阐述了映射文件的基本结构及其组成部分,包括主键(id)、普通属性(property)等关键元素的配置方法和策略。 ### ...

    Hibernate注解jar包

    - `@GeneratedValue`:指定主键生成策略,如`GenerationType.IDENTITY`(自动增长)、`GenerationType.SEQUENCE`(序列)等。 - `@Column`:定义字段在数据库表中的列名,可设置长度、是否允许为空等属性。 3. *...

    Hibernate注解用法总结

    在Java的ORM框架Hibernate中,注解是一种强大的工具,它允许开发者无需XML配置就能实现对象关系映射。本文主要总结了Hibernate中常见的注解用法,涵盖了类级别和属性级别的注解,以及与主键和非主键相关的注解。 1....

    hibernate映射的注解配置

    在Java持久化API (JPA) 和Hibernate框架中,注解是一种方便且强大的方式来配置对象关系映射(ORM),使Java对象与数据库中的表进行对应。以下是对标题和描述中涉及的Hibernate映射注解的详细解释: 1. **@Entity(name...

    hibernate注解说明文档

    为了简化开发流程并提高代码可读性和维护性,Hibernate引入了一系列注解,使得开发者能够更加直观地配置实体类与数据库表之间的映射关系。 #### 二、核心注解解析 ##### 1. @Entity - **功能**:将一个Java类声明...

    Hibernate主键策略-sequence

    在Hibernate的映射文件或注解中,我们需要配置使用序列来生成主键。对于XML配置,可以在`<id>`标签下使用`<generator>`子标签,指定为`sequence`: ```xml <generator class="sequence"> <param name="...

    myeclipse自动生成hibernate映射文件.

    在Java开发中,MyEclipse是一款强大的...然而,需要注意的是,虽然自动化工具提供了便利,但理解和掌握Hibernate的基本原理和映射机制仍然是至关重要的,因为这有助于更好地优化和维护项目,以及解决可能出现的问题。

    hibernate 映射模板

    通常与数据库的自动增长ID对应,可以使用`generator`属性指定生成策略,如`increment`、`identity`、`sequence`等。 4. `<property>`:表示类的属性,对应数据库中的列。需要指定属性名(`name`属性)和列名(`...

    hibernate注解详解说明

    在 Hibernate 中,注解是一种简洁且强大的工具,用于替代传统的 XML 配置文件来描述对象模型和数据库之间的映射关系。这篇文档将深入探讨 Hibernate 注解的使用。 ### 第 1 章 创建一个注解项目 在开始使用 ...

    Hibernate注解大全

    在Hibernate中,通过使用注解可以更加便捷地进行对象关系映射。本文档旨在详细介绍Hibernate中的主要注解及其用法。 #### 二、注解详解 ##### 1. @Entity - **功能**:此注解用于将一个Java类声明为一个实体bean,...

    hibernate映射主键生成策略native

    ### Hibernate映射主键生成策略native #### 一、引言 在ORM(对象关系映射)技术中,Hibernate作为一款流行的Java持久层框架,在处理数据持久化方面提供了丰富的功能和灵活性。其中,主键生成策略是Hibernate配置...

    hibernate注解.rar

    Hibernate提供了丰富的注解,如@Entity、@Table、@Column、@Id等,这些注解对应着不同的ORM元素,用于构建实体类与数据库表之间的映射关系。 二、核心注解解析 2.1 @Entity @Entity注解标识一个Java类为Hibernate...

Global site tag (gtag.js) - Google Analytics