1,Hibernate标识生成策略
标识符生成器 | 描述 |
increment | 适用于代理主键。由Hibernate自动以递增方式生成。 |
identity | 适用于代理主键。由底层数据库生成标识符。 |
sequence | 适用于代理主键。Hibernate根据底层数据库的序列生成标识符,这要求底层数据库支持序列。 |
hilo | 适用于代理主键。Hibernate分局high/low算法生成标识符。 |
seqhilo | 适用于代理主键。使用一个高/低位算法来高效的生成long,short或者int类型的标识符。 |
native | 适用于代理主键。根据底层数据库对自动生成标识符的方式,自动选择identity、sequence或hilo。 |
uuid.hex | 适用于代理主键。Hibernate采用128位的UUID算法生成标识符。 |
uuid.string | 适用于代理主键。UUID被编码成一个16字符长的字符串。 |
assigned | 适用于自然主键。由Java应用程序负责生成标识符。 |
foreign | 适用于代理主键。使用另外一个相关联的对象的标识符。 |
2,Hibernate映射类型
在对象/关系映射文件中,Hibernate采用映射类型作为Java类型和SQL类型的桥梁。Hibernate映射类型分为2种:内置映射类型和自定义映射类型。
2.1内置映射类型
Hibernate映射类型 | Java类型 | 标准SQL类型 | 大小 |
integer/int | java.lang.Integer/int | INTEGER | 4字节 |
long | java.lang.Long/long | BIGINT | 8字节 |
short | java.lang.Short/short | SMALLINT | 2字节 |
byte | java.lang.Byte/byte | TINYINT | 1字节 |
float | java.lang.Float/float | FLOAT | 4字节 |
double | java.lang.Double/double | DOUBLE | 8字节 |
big_decimal | java.math.BigDecimal | NUMERIC |
character | java.lang.Character/java.lang.String/char | CHAR(1) | 定长字符 |
string | java.lang.String | VARCHAR | 变长字符 |
boolean/ yes_no/true_false | java.lang.Boolean/Boolean | BIT | 布尔类型 |
date | java.util.Date/java.sql.Date | DATE | 日期 |
timestamp | java.util.Date/java.util.Timestamp | TIMESTAMP | 日期 |
calendar | java.util.Calendar | TIMESTAMP | 日期 |
calendar_date | java.util.Calendar | DATE | 日期 |
binary | byte[] | BLOB | BLOB |
text | java.lang.String | TEXT | CLOB |
serializable | 实现java.io.Serializablej接口的任意Java类 | BLOB | BLOB |
clob | java.sql.Clob | CLOB | CLOB |
blob | java.sql.Blob | BLOB | BLOB |
class | java.lang.Class | VARCHAR | 定长字符 |
locale | java.util.Locale | VARCHAR | 定长字符 |
timezone | java.util.TimeZone | VARCHAR | 定长字符 |
currency | java.util.Currency | VARCHAR | 定长字符 |
2.22、自定义映射类型
Hibernate提供了自定义映射类型接口,允许用户以编程的方式创建自定义的映射类型。用户自定义的映射类型需要实现net.sf.hibernate.UserType或net.sf.hibernate.CompositeUserType接口。具体的创建自定义映射类型的方法请参考hibernate官方文档或相关资料.
分享到:
相关推荐
**标题解析:**“hibernate Maven仓库资源”这一标题表明了我们关注的是关于Hibernate框架在Maven项目中的使用。Hibernate是一个流行的Java...这些知识点对于Java开发者在构建基于Hibernate的持久层架构时至关重要。
Struts、Spring 和 Hibernate 是Java开发中非常著名的三个开源框架,它们在企业级应用开发中起着关键作用。Struts 是一个 MVC(Model-View-Controller)架构的 Web 框架,Spring 提供了一个全面的后端服务管理平台,...
知识库管理系统的设计和实现需要考虑到多种技术因素,包括 JAVA 语言、J2EE 框架、MVC 模型、Struts 框架、Spring 框架和 Hibernate 框架等。只有通过合理的技术选择和设计,才能实现知识库管理系统的高效、可靠和...
【hibernate 重点知识】 一、hibernate 简介 Hibernate 是一个流行的 Java 应用程序框架,主要用于简化对象关系映射(ORM)的过程。它允许开发者使用面向对象的方式来操作数据库,通过自动映射数据库表为 Java ...
- **所需的软件包**:包括Hibernate库、JPA相关库、MySQL驱动等,确保项目运行环境的建立。 3. **主键生成策略** - 主键是数据库表中唯一标识记录的字段,Hibernate提供了多种主键生成策略,如`increment`、`...
《Hibernate知识文档 知识点笔记纪要》 在Java开发中,Hibernate是一个非常重要的ORM(Object-Relational Mapping)框架,它简化了数据库与Java对象之间的交互。本笔记主要涵盖了建立第一个Hibernate项目的步骤,...
1. 导入必要的库:为了使用Hibernate,需要在项目中添加Hibernate的jar包,这些包包含了所有必要的API和依赖,使得我们能够利用其功能。 2. 定义实体类:实体类代表数据库中的表,每个类对应一张表,类的属性对应表...
这个压缩包文件包含了一系列必要的JAR库,使得开发人员能够轻松地在他们的项目中集成Hibernate 3.3.1版本。 在Java开发中,Hibernate提供了一个强大的工具,将复杂的SQL语句和数据库交互转换为简单的对象方法调用。...
【标题】:“公司内部hibernate知识培训” 【描述】:在软件开发中,尤其是在Java领域,ORM(Object-Relational Mapping,对象关系映射)框架是连接业务逻辑与数据库的关键技术之一。Hibernate作为最流行的ORM框架...
Hibernate 3.0 是一个非常重要的Java持久化框架,它为开发者提供了强大的对象关系映射(ORM)功能,使得在Java...在实际开发中,理解并熟练运用这些知识点,可以有效地利用Hibernate 3.0实现高效、可靠的数据库操作。
总结来说,"hibernate分库的dome"项目涉及到的主要知识点包括:Hibernate的多数据源配置、数据库分库原理、路由策略、事务管理、分布式工具(如ShardingSphere)、SQL优化、数据迁移与备份、测试与监控、水平扩展与...
例如,Hibernate实体管理器库、日志库、JUnit测试库和数据库驱动程序等都是进行Hibernate开发时需要配置的。 在Hibernate 5中,持久化对象(PO)的定义、映射文件的配置以及主配置文件的设置是实现数据持久化的关键...
WCP 是一套BS架构的开源知识管理系统、知识库系统。它能提供团队知识库建设的一整套功能,从知识创建、知识更新、知识推送到知识评价、知识激励、知识统计以及基于以上功能权限控制等功能。 WCP开源版本采用...
Hibernate3是一个广泛使用的Java对象关系映射(ORM)框架,它允许开发者用面向对象的方式处理数据库操作,极大地简化了Java应用...理解并熟练运用这些知识点,将使你在开发基于Hibernate3的Java应用时更加得心应手。
Java-SSM中医知识库微信小程序毕业论文 Java-SSM中医知识库微信小程序毕业论文是基于SSM框架的中医知识库微信小程序毕业论文,主要介绍了中医知识库小程序的设计和实现。在该论文中,作者对中医知识库小程序的需求...
下面我们将深入探讨Hibernate和MySQL结合使用时的一些关键知识点: 1. **Hibernate ORM**: Hibernate是一个持久层框架,它将Java对象转换为数据库记录,反之亦然。通过提供对象关系映射(ORM)服务,Hibernate消除...
这个`hibernate3.zip`压缩包包含了`hibernate3.jar`,它是Hibernate 3版本的核心库,包含了执行ORM(对象关系映射)所需的所有类和接口。 在Java开发中,Hibernate3主要提供了以下关键知识点: 1. **对象关系映射...
以下是一些关于Hibernate3及其核心组件的知识点: 1. **Hibernate3简介**:Hibernate3是Hibernate项目的第三个主要版本,它提供了一种对象关系映射(ORM)解决方案,允许开发人员使用面向对象的编程模型来处理关系...
4. **自带jar包**:压缩包中包含的jar文件是Hibernate运行所必需的库,包括Hibernate核心库、JDBC驱动以及其他的依赖库。这些库提供了对Hibernate API的访问,以及与数据库交互的能力。 5. **文件结构**:尽管没有...