`

hibernate annoation (三 id生成器)

阅读更多

id生成:
hibernate内不可使用的id生成器可见代码

使用@GeneratedValue
1 正对不同的数据库可以同时使用
        @Id
        @GeneratedValue(strategy = GenerationType.AUTO)
2 针对mysql
 @Id
 @GeneratedValue(strategy = GenerationType.IDENTITY)
3 针对oracle
       @Id
       @GeneratedValue(strategy = GenerationType.SEQUENCE,generator="s_gen")
       @SequenceGenerator(name="s_gen",sequenceName="s_seq")
说明:@GeneratedValue()的strategy属性支持5中id生成器:除上面3中外还有GenerationType.TABLE
2配合使用@GenericGenerator 不单独使用
hibernate内不可使用的id生成器可见代码
GENERATORS.put( "uuid", UUIDHexGenerator.class );
  GENERATORS.put( "hilo", TableHiLoGenerator.class );
  GENERATORS.put( "assigned", Assigned.class );
  GENERATORS.put( "identity", IdentityGenerator.class );
  GENERATORS.put( "select", SelectGenerator.class );
  GENERATORS.put( "sequence", SequenceGenerator.class );
  GENERATORS.put( "seqhilo", SequenceHiLoGenerator.class );
  GENERATORS.put( "increment", IncrementGenerator.class );
  GENERATORS.put( "foreign", ForeignGenerator.class );
  GENERATORS.put( "guid", GUIDGenerator.class );
  GENERATORS.put( "uuid.hex", UUIDHexGenerator.class );  // uuid.hex is deprecated
  GENERATORS.put( "sequence-identity", SequenceIdentityGenerator.class );
)
如果想要不同的表使用相同的主键生成器,可以把他的generator的name属性设为相同即可
例如:
@GeneratedValue(name="id1")
@GenericGenerator(name="id1",strategy="identity")
 

分享到:
评论

相关推荐

    hibernate的映射表生成器

    标题中的“hibernate的映射表生成器”是一个图形用户界面(GUI)工具,专门设计用于帮助开发者自动生成数据表,其基于对象模型(po)和映射文件(XML文件)。这个工具的出现,极大地提高了开发效率,减少了手动创建...

    Hibernate实体类生成器mysql版

    《Hibernate实体类生成器mysql版:提升开发效率的利器》 在软件开发过程中,数据库实体类的编写是一项繁琐且重复的工作。为了提高开发效率并减少人为错误,许多开发者选择使用代码生成工具,如"Hibernate实体类生成...

    Hibernate教程02_ID生成策略

    在Java的持久化框架Hibernate中,ID生成策略是至关重要的一个环节。它是用来唯一标识数据库中每一行记录的关键部分。本教程将详细讲解Hibernate中的ID生成策略,以及如何在实际项目中灵活应用。 首先,ID生成策略是...

    spring+hibernate+struts2源代码生成器

    【标题】"spring+hibernate+struts2源代码生成器"是一个工具,它基于Struts2.0、Hibernate和Spring这三个核心技术框架,用于自动化地生成Java Web应用的源代码。这个工具由.NET平台构建,因此在使用之前,用户需要...

    Hibernate内置标识符生成器

    1. Increment 标识符生成器:这种生成器适用于逻辑主键,它在 Hibernate 初始化时获取表中最大 ID,然后在插入新记录时递增。但这种方法不适用于多线程或分布式环境,因为可能会导致并发问题,即多个进程可能会同时...

    Hibernate 映射文件自动生成

    【标签】:“源码”和“工具”表明这篇内容可能涉及到具体的代码实现和辅助开发的工具,可能是通过某种代码生成器或者IDE插件来实现映射文件的自动化创建。 【压缩包子文件的文件名称列表】:“hibernate映射文件...

    自己写的Struts2.0+hibernate+spring代码生成器

    你提供的"自己写的Struts2.0+hibernate+spring代码生成器"是一个.NET工具,用于自动化生成SSH框架下的基础代码。通常,这样的代码生成器会根据数据库表结构自动生成实体类、DAO接口及其实现、Action类等,大大减少了...

    Hibernate DAO生成器

    **三、使用Hibernate DAO生成器的步骤** 1. **配置Hibernate**:首先,需要设置Hibernate的配置文件(如`hibernate.cfg.xml`),包括数据库连接信息、实体类的映射文件等。 2. **定义实体类**:根据数据库中的表...

    Hibernate各种主键生成策略与配置详解

    关于Hibernate的各种主键生成策略与配置详解

    Swing编写的Hibernate生成器

    Swing编写的Hibernate生成器是一种实用工具,它利用Java Swing图形用户界面来简化Hibernate框架的实体类和映射文件的创建过程。Hibernate是Java领域中一个广泛应用的对象关系映射(ORM)框架,它允许开发者通过面向...

    hibernate生成实体类

    ### hibernate生成实体类 #### 简介 在软件开发过程中,ORM(对象关系映射)技术被广泛应用于数据库操作之中,它能够将数据库表结构与程序中的对象进行映射,极大地简化了数据访问层的编码工作。Hibernate作为一款...

    hibernate映射文件生成数据库

    本文将深入探讨如何利用Hibernate的映射文件来生成数据库,以此提高开发效率并减少手动创建数据库表的工作量。 一、Hibernate映射文件概述 Hibernate映射文件,通常以`.hbm.xml`为扩展名,是Hibernate用来定义Java...

    hibernate代码自动生成

    而“Hibernate代码自动生成”则是指利用Hibernate的工具或者第三方库,自动生成与数据库表对应的Java实体类、DAO(数据访问对象)层、Service层以及相关的SQL语句,从而减少手动编写这些重复性代码的工作量,提高...

    利用hibernate中的SchemaExport生成数据表

    在这个例子中,我们创建了一个名为`User`的简单类,包含`id`,`name`和`password`三个属性,以及对应的getter和setter方法。 2. **编写映射文件**: 随后,我们需要为`User`类创建一个`.hbm.xml`映射文件。在这个...

    hibernate映射主键生成策略native

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

    Hibernate映射文件主键的生成

    在Hibernate中,主键的生成可以通过编程方式、数据库内置机制或者特定的生成器来实现。接下来我们将逐一探讨这些策略: 1. **Identity策略**: 这种策略适用于支持自动增长主键的数据库,如MySQL的`AUTO_INCREMENT...

    cdst ssh代码生成器,免费的,功能强悍的struts2+spring2.5+hibernate3.2的一套 代码生成系统。.zip

    cdst ssh代码生成器,免费的,功能强悍的struts2+spring2.5+hibernate3.2的一套 代码生成系统。.zip cdst ssh代码生成器,免费的,功能强悍的struts2+spring2.5+hibernate3.2的一套 代码生成系统。.zip cdst ssh代码...

    hibernate自动生成数据库文件

    1. **Hibernate Tools**:这是一个用于增强Hibernate功能的工具集,它提供了包括反向工程、代码生成、JPA工具和HQL编辑器等多种功能。在本例中,`hibernate自动生成数据库文件.exe`可能是Hibernate Tools的一个实现...

Global site tag (gtag.js) - Google Analytics