hibernate中.hbm.xml 中ID的产生
ID的产生
<generator class="assigned"/>
Hibernate提供了很多内置的实现。下面是一些内置生成器的快捷名字:
increment(递增)
用于为long, short或者int类型生成唯一标识。只有在没有其他进程往同一张表中插入数据时才能使用。 在集群下不要使用。
identity
对DB2,MySQL, MS SQL Server, Sybase和HypersonicSQL的内置标识字段提供支持。返回的标识符是long, short 或者int类型的。
sequence (序列)
在DB2,PostgreSQL, Oracle, SAP DB, McKoi中使用序列(sequence),而在Interbase中使用生成器(generator)。返回的标识符是long, short或者 int类型的。
hilo (高低位)
使用一个高/低位算法来高效的生成long, short或者 int类型的标识符。给定一个表和字段(默认分别是是hibernate_unique_key 和next_hi)作为高位值得来源。高/低位算法生成的标识符只在一个特定的数据库中是唯一的。在使用JTA获得的连接或者用户自行提供的连接中,不要使用这种生成器。
seqhilo(使用序列的高低位)
使用一个高/低位算法来高效的生成long, short或者 int类型的标识符,给定一个数据库序列(sequence)的名字。
uuid.hex
用一个128-bit的UUID算法生成字符串类型的标识符。在一个网络中唯一(使用了IP地址)。UUID被编码为一个32位16进制数字的字符串。
uuid.string
使用同样的UUID算法。UUID被编码为一个16个字符长的任意ASCII字符组成的字符串。不能使用在PostgreSQL数据库中
native(本地)
根据底层数据库的能力选择identity, sequence 或者hilo中的一个。
assigned(程序设置)
让应用程序在save()之前为对象分配一个标示符。
foreign(外部引用)
使用另外一个相关联的对象的标识符。和<one-to-one>联合一起使用。
通常来说表映射的主键都是自增长的.即一般会选identity .当然也有复合主键什么的.
分享到:
相关推荐
在Java的持久化框架中,Hibernate是一个非常常用且强大的ORM(对象关系映射)工具,它使得开发者可以方便地将数据库操作转化为面向对象的方式。在实际的项目开发中,我们经常遇到各种各样的关联关系,比如一对一、一...
在实际开发中,例如使用Eclipse或IntelliJ IDEA这样的IDE,它们往往提供了集成的Hibernate支持,能够方便地自动生成映射文件。同时,还有一些独立的工具,如Hibernate Tools,也可以完成类似的任务。 总结来说,...
首先,你需要在数据库中创建好你要用到的表。这通常包括设计表的结构,如字段名、数据类型、主键等。在MySQL中,你可以通过SQL语句创建表,或者使用可视化工具如phpMyAdmin来创建。 接着,新建一个myEclipse项目,...
下面将介绍如何使用Hibernate Code Generation来产生数据库表映射Java对象,首先要在数据库中创建表,并设置号字段名和主键(主键很重要,关于主键的选择建议你使用与业务无关的ID作为主键);打开Hibernate视图找到...
本篇将介绍如何在Eclipse环境中配置和使用Hibernate进行简单的数据操作。 ### 一、Hibernate环境搭建 1. **下载Hibernate**: 首先,我们需要从官方网站或Maven仓库下载Hibernate的JAR包,包括hibernate-core、...
在一对一对映射中,我们可以设置级联操作,比如`cascade="all"`,这样当删除或保存一个实体时,其关联的实体也会自动进行相应的操作。但是需要注意的是,级联操作可能会引发数据冗余或数据一致性问题,因此需谨慎...
【Hibernate Tools for Eclipse Plugins】是Eclipse集成开发环境中用于支持Hibernate框架的一组插件,它提供了许多方便开发者的功能,如代码生成、配置文件编辑、逆向工程等。这些工具极大地简化了Hibernate应用的...
- **Eclipse配置Hibernate.doc**:指导如何在Eclipse集成开发环境中配置和使用Hibernate。 综上所述,这个压缩包包含了Hibernate的全面学习资料,从基础概念、配置到高级特性和实践案例,适合初学者和进阶者提升对...
标题“Hibernate映射关系配置:XML方式和注解方式”涉及到的是Java持久层框架Hibernate中的一个重要概念——对象关系映射(ORM)。在这个主题中,我们将探讨如何通过XML映射文件和注解来配置Hibernate实体之间的关系...
总的来说,"hibernate的映射表生成器"是一个提升开发效率的实用工具,它简化了ORM映射的创建过程,使得开发者能更专注于业务逻辑,而不是繁琐的数据库配置工作。通过熟练掌握这类工具,开发者可以更高效地利用...
总的来说,Eclipse中的Hibernate反向工程是将数据库结构映射到Java代码的有效工具,它大大简化了开发流程,特别是在处理复杂的数据库模型时。通过正确配置数据源和选择合适的生成选项,开发者可以快速地构建与数据库...
"Eclipse plugin hibernate generation.zip" 提供的插件是针对Hibernate框架的,Hibernate是一个开源的对象关系映射(ORM)框架,它简化了在Java应用中处理数据库的工作。这个插件的主要目的是为开发者提供方便,...
标题中的“用Hibernate自带的工具生成映射文件”指的是使用Hibernate框架提供的元数据生成工具,这个工具可以帮助开发者自动生成Hibernate所需的映射文件(一般为.hbm.xml文件),这些映射文件是ORM(对象关系映射)...
通过XML映射文件(hibernate-mapping.xml)或注解,我们可以定义实体类与数据库表之间的关系,如主键、外键、关联映射等。 4. **对象状态与生命周期**:Hibernate将对象分为瞬时态、持久态、游离态和删除态四种状态...
关系映射XML生成工具,如"Middlegen-Hibernate-r5",则是为了简化这一过程而设计的。这些工具能够自动生成Hibernate所需的配置文件,包括映射文件(.hbm.xml),这些文件定义了Java类和数据库表之间的映射关系。 ...
Hibernate一对一数据关联 Hibernate下的多对多关系 Hibernate关系映射 Hibernate继承关系映射 Hibernate映射类型-主键生成器-核心API Hibernate3 插件Eclipse配置
在Java世界中,Hibernate是一个强大的对象关系映射(ORM)框架,它简化了数据库操作,使得开发者可以使用面向对象的方式处理数据。这个“hibernate example”是一个关于如何在Eclipse环境下设置和运行一个基本的...
在Java中,注解是一种元数据,可以提供关于代码的附加信息,而Hibernate的注解则允许开发者在Java实体类中直接定义数据库映射,而无需创建单独的XML映射文件。这使得代码更加简洁,且易于维护。例如,@Entity表示一...
1. **自动创建映射文件**:基于已有的Java实体类,Hibernate Synchronizer能自动生成对应的.hbm.xml映射文件,包含字段映射、主键定义、关联关系等信息。 2. **动态更新映射**:当Java类的属性、注解等发生变化时,...
ORM是将数据库中的表映射为Java类的过程,使得开发者可以使用面向对象的方式来操作数据,而不是传统的SQL语句。Hibernate作为ORM工具,使得Java程序与数据库之间的交互更加简洁。 2. **Hibernate配置文件...