Hibernate API简介
其接口分为以下几类:
l 提供访问数据库的操作的接口;
l 用于配置Hibernate的接口;
l 回调接口
l 扩展Hibernate的功能的接口。
这些接口大多数位于net.sf.hibernate包中
Hibernate的核心接口
5个核心接口:
l Configuration接口:配置Hibernate,根启动Hibernate,创建SessionFactory对象。
l SessionFactory接口:初始化Hibernate,充当数据存储源的代理,创建Session对象。
l Session接口:负责保存、更新、删除、加载和查询对象。
l Transaction:管理事务。
l Query和Criteria接口:执行数据库查询。
SessionFactory实例对应一个数据存储源,特点:
线程安全的,重量级。
Session:是Hibernate应用最广泛的接口,特点:
不是线程安全的,轻量级。
Java数据类型 |
Hibernate数据类型 |
标准SQL数据类型 (PS:对于不同的DB可能有所差异) |
byte、java.lang.Byte |
byte |
TINYINT |
short、java.lang.Short |
short |
SMALLINT |
int、java.lang.Integer |
integer |
INGEGER |
long、java.lang.Long |
long |
BIGINT |
float、java.lang.Float |
float |
FLOAT |
double、java.lang.Double |
double |
DOUBLE |
java.math.BigDecimal |
big_decimal |
NUMERIC |
char、java.lang.Character |
character |
CHAR(1) |
boolean、java.lang.Boolean |
boolean |
BIT |
java.lang.String |
string |
VARCHAR |
boolean、java.lang.Boolean |
yes_no |
CHAR(1)('Y'或'N') |
boolean、java.lang.Boolean |
true_false |
CHAR(1)('Y'或'N') |
java.util.Date、java.sql.Date |
date |
DATE |
java.util.Date、java.sql.Time |
time |
TIME |
java.util.Date、java.sql.Timestamp |
timestamp |
TIMESTAMP |
java.util.Calendar |
calendar |
TIMESTAMP |
java.util.Calendar |
calendar_date |
DATE |
byte[] |
binary |
VARBINARY、BLOB |
java.lang.String |
text |
CLOB |
java.io.Serializable |
serializable |
VARBINARY、BLOB |
java.sql.Clob |
clob |
CLOB |
java.sql.Blob |
blob |
BLOB |
java.lang.Class |
class |
VARCHAR |
java.util.Locale |
locale |
VARCHAR |
java.util.TimeZone |
timezone |
VARCHAR |
java.util.Currency |
currency |
VARCHAR |
分享到:
相关推荐
这篇博客主要探讨了Java数据类型如何与Hibernate的类型映射进行对应。 首先,Java的基本数据类型在Hibernate中有对应的类型映射。例如,int型在Hibernate中通常映射为Integer类型,因为数据库字段可能允许为空...
下面我们将详细探讨Java、Hibernate以及SQL之间的数据类型对应关系。 1. **基本数值类型**: - `byte` 和 `java.lang.Byte` 对应于 SQL 的 `TINYINT` - `short` 和 `java.lang.Short` 对应于 SQL 的 `SMALLINT` ...
在Java编程语言中,与数据库交互是常见的任务,这就涉及到`java.sql.Types`枚举类,它是Java数据类型与数据库字段类型之间的桥梁。`java.sql.Types`定义了一系列常量,这些常量代表了SQL标准中的数据类型,使得我们...
Hibernate 提供了多种数据类型,用于匹配不同数据库系统支持的标准 SQL 数据类型。这些数据类型包括: - **数值类型**:例如,`byte` 和 `java.lang.Byte` 映射到 `TINYINT`,`short` 和 `java.lang.Short` 映射到 ...
2. **实现Hibernate的Type接口**:这个接口是自定义数据类型的核心,它定义了如何在Java对象和SQL值之间进行转换。你需要实现`nullSafeGet()`和`nullSafeSet()`方法,分别用于从ResultSet中读取数据和将数据写入...
标题:“Hibernate数据类型映射及ID” 描述:“Hibernate与各数据库数据类型的映射” ### Hibernate数据类型映射 Hibernate作为一款流行的Java持久层框架,它提供了丰富的数据类型映射功能,使得开发者能够更加...
Hibernate简化了Java应用程序与数据库之间的交互,它允许我们将Java对象直接映射到数据库中的表。理解Hibernate映射类型与Java类型的对应关系对于有效地使用Hibernate至关重要。 首先,我们来看一下基本数据类型的...
在Hibernate中,Java类被称为实体类,它们代表数据库中的表。使用注解@Entity声明一个类为实体,@Table指定对应的表名,@Id标识主键字段。此外,@Column、@GeneratedValue等注解用于详细描述字段的映射规则。 五、...
在Java的持久化框架中,Hibernate是一个非常重要的工具,它提供了强大的对象关系映射(ORM)功能,使得开发者可以方便地在Java对象和数据库表之间进行数据操作。当我们需要执行一些特殊的、复杂的或者非标准的SQL...
### Java框架之Hibernate详解 #### 一、Get与Load方法的区别 在Hibernate中,`get()`和`load()`方法是用来加载持久化实体的主要方法。它们之间的主要区别在于处理空值和懒加载的方式。 1. **Load方法**: - `...
7. **CLOB(字符大对象)**:用于存储大量文本数据,如XML文档,对应的Java类型是`java.sql.Clob`。 8. **自增主键**:例如MySQL的AUTO_INCREMENT,Hibernate通常通过`@GeneratedValue`和`@Id`注解配合`...
在Java编程领域,Hibernate是一个非常流行的对象关系映射(ORM)框架,它简化了数据库操作,使得开发者可以使用面向对象的方式来处理数据。本项目通过Java的反射和注解技术,试图模拟Hibernate的部分功能,以便更好...
1. 实体(Entity):在Hibernate中,实体对应数据库中的表,通常是一个Java类。 2. 主键(Primary Key):每个实体都有一个主键,它是表中的唯一标识符。 3. Session:Hibernate的核心接口,负责对象的创建、读取、...
在反向工程过程中,Hibernate首先获取数据库的元数据,包括表名、字段名、数据类型、约束条件等。这些元数据是生成Java代码的基础,确保了Java类与数据库表结构的一致性。 4. Java持久化接口: Hibernate逆向工程...
在使用Hibernate时,我们需要将Java对象的属性映射到数据库中的列,这就涉及到Java类型与Hibernate映射类型以及标准SQL类型之间的对比。以下是对这些类型的详细解析: 1. **整数类型**: - Java中的`int`或`...
2. **对象关系映射(ORM)**:ORM是Java持久化技术的核心,通过将数据库表映射为Java类,以及类的属性对应表的字段,使得数据库操作与业务逻辑更加解耦。 3. **配置Hibernate**:书中详细讲解了如何配置Hibernate的...
关于Mysql数据库数据类型的映射,Hibernate提供了一套标准的数据类型映射。例如: - `String` 对应 `VARCHAR` - `int` 或 `Integer` 对应 `INTEGER` - `long` 或 `Long` 对应 `BIGINT` - `boolean` 对应 `BIT` - `...
在实体类生成数据库表的过程中,反射被用来读取实体类的元数据,如字段名、类型等,然后根据这些信息构建出创建数据库表的SQL语句。 在实际应用中,我们可能使用Hibernate的`Hibernate Tools`或者MyBatis的`MyBatis...