`
as619864232
  • 浏览: 326322 次
社区版块
存档分类
最新评论

Hibernate 基本值类型

阅读更多

基本值类型

内置的 basic mapping types 可以大致地分类为:

integer, long, short, float, double, character, byte, boolean, yes_no, true_false

这些类型都对应 Java 的原始类型或者其封装类,来符合(特定厂商的)SQL 字段类型。boolean, yes_no 

和 true_false 都是Java 中 boolean 或者 java.lang.Boolean 的另外说法。

string

从 java.lang.String 到 VARCHAR(或者 Oracle 的 VARCHAR2)的映射。

date, time, timestamp

从 java.util.Date 和其子类到 SQL 类型 DATETIME 和 TIMESTAMP(或等价类型)的映射。

calendar, calendar_date

从 java.util.Calendar 到 SQL 类型 TIMESTAMP 和 DATE(或等价类型)的映射。

big_decimal, big_integer

从 java.math.BigDecimal 和 java.math.BigInteger 到 NUMERIC(或者 Oracle 的 NUMBER类型)的映射。

locale, timezone, currency

从 java.util.Localejava.util.TimeZone 和 java.util.Currency 到 VARCHAR(或者 Oracle 的 VARCHAR2 

类型)的映射。Locale 和 Currency 的实例被映射为它们的 ISO 代码。TimeZone 的实例被影射为它的 ID

class

从 java.lang.Class 到 VARCHAR(或者 Oracle 的 VARCHAR2 类型)的映射。Class 被映射为它的全限定名。

binary

把字节数组(byte arrays)映射为对应的 SQL 二进制类型。

text

把长 Java 字符串映射为 SQL 的 CLOB 或者 TEXT 类型。

serializable

把可序列化的 Java 类型映射到对应的 SQL 二进制类型。你也可以为一个并非默认为基本类型的可序列化 Java 类或

者接口指定Hibernate 类型 serializable

clob, blob

JDBC 类 java.sql.Clob 和 java.sql.Blob的映射。某些程序可能不适合使用这个类型,因为 blob 和 clob 对象可能

在一个事务之外是无法重用的。(而且, 驱动程序对这种类型的支持充满着补丁和前后矛盾。)

imm_date, imm_time, imm_timestamp, imm_calendar, imm_calendar_date, imm_serializable, imm_binary

一般来说,映射类型被假定为是可变的 Java 类型,只有对不可变 Java 类型,Hibernate 会采取特定的优化措施,

应用程序会把这些对象作为不可变对象处理。比如,你不应该对作为 imm_timestamp 映射的 Date 执行 

Date.setTime()。要改变属性的值,并且保存这一改变,应用程序必须对这一属性重新设置一个新的(不一样的)对象。

实体及其集合的唯一标识可以是除了 binary、 blob 和 clob 之外的任何基础类型。(联合标识也是允许的,后面会说到。)

在 org.hibernate.Hibernate 中,定义了基础类型对应的 Type 常量。比如,Hibernate.STRING 代表 string 类型。

分享到:
评论

相关推荐

    JAVA数据类型与Hibernate的类型映射

    首先,Java的基本数据类型在Hibernate中有对应的类型映射。例如,int型在Hibernate中通常映射为Integer类型,因为数据库字段可能允许为空(NULL),而Java的基本类型不能是NULL。同样,boolean型在Hibernate中映射为...

    Hibernate数据类型映射及ID

    下面将详细介绍Hibernate中的各种基本数据类型及其在不同数据库中的映射。 #### 基本数据类型映射 1. **Integer/Int**: 映射到`java.lang.Integer`,在SQL中对应`INTEGER`类型,占用4字节。 2. **Long**: 映射到`...

    Hibernate使用——自定义数据类型

    2. **实现Hibernate的Type接口**:这个接口是自定义数据类型的核心,它定义了如何在Java对象和SQL值之间进行转换。你需要实现`nullSafeGet()`和`nullSafeSet()`方法,分别用于从ResultSet中读取数据和将数据写入...

    Hibernate 映射类型与Java 类型对照

    首先,我们来看一下基本数据类型的映射。`integer`对应Java中的`int`或`Integer`,在SQL中映射为`INTEGER`类型;`long`对应`long`或`Long`,映射为`BIGINT`;`short`对应`short`或`Short`,映射为`SMALLINT`;`float...

    Hibernate中映射枚举类型

    #### 映射枚举类型的基本方式 Hibernate提供了一个专门用于枚举类型映射的类`org.hibernate.type.EnumType`。通过这个类,我们可以选择将枚举实例的`name`或者`ordinal`映射到数据库。具体的配置是在Hibernate的...

    hibernate映射Oracle中LONG类型

    这与 Java 中的长整形基本数据类型 long 不同,LONG 类型主要用于不需要作字符串搜索的长串数据。 在 Hibernate 框架中,使用自定义类型映射 Oracle 中的 LONG 类型字段是一种常见的解决方案。通过实现 UserType ...

    hibernate4基本配置方式详解

    本文将深入探讨 Hibernate 4 的基本配置方式,以便开发者能够更好地理解和实施相关配置。 首先,我们有传统的XML配置方式,通常通过`hibernate.cfg.xml`文件进行。这个文件包含了Hibernate所需的数据库连接信息、...

    java基本数据类型字节大小 hibernate运行原理

    ### Java基本数据类型及其字节大小 在Java编程语言中,基本数据类型是构建更复杂数据结构的基础。了解这些类型及其占用的字节数对于内存管理和优化程序性能至关重要。下面详细介绍了Java中的基本数据类型以及它们所...

    hibernate基本知识点

    ### Hibernate基本知识点详解 #### Hibernate简介 Hibernate是一个开源的对象关系映射(ORM)框架,它为Java应用程序提供了简化的方式去处理数据库操作。通过提供一种面向对象的方法来与关系型数据库进行交互,...

    hibernate基本功能

    ### Hibernate基本功能详解 #### 一、概述 Hibernate是一个开源的对象关系映射(ORM)框架,它能够将Java对象映射到数据库表中,并管理这些对象的生命周期。本篇文章主要介绍利用Hibernate框架来实现基本的功能...

    Hibernate和java中的对应数据类型

    1. **基本数值类型**: - `byte` 和 `java.lang.Byte` 对应于 SQL 的 `TINYINT` - `short` 和 `java.lang.Short` 对应于 SQL 的 `SMALLINT` - `int` 和 `java.lang.Integer` 对应于 SQL 的 `INTEGER` - `long` ...

    Hibernate Reference Documentation

    文档还可能包含对Hibernate类型系统的讨论,包括值类型、基本值类型、自定义值类型和任意类型映射。类型系统允许开发者在持久化层面上对Java基本类型、基本类型的包装类以及其他复杂的值类型进行处理。 通过以上...

    关于Oracle的 Clob数据类型在Hibernate中的应用小结

    在Hibernate中,如果Clob字段的值是字符串,可以通过将Clob字段映射为String类型,让Hibernate自动处理转换。这种方式简单易用,但可能不适合非常大的文本,因为可能会导致内存溢出。 3.3 直接使用Clob类型: 对于...

    hibernate实体映射文件字段设置默认值

    首先,我们需要了解一个基本的Hibernate映射文件结构: ```xml <hibernate-mapping> <!-- 映射类的属性 --> </hibernate-mapping> ``` 这里的`<class>`标签表示映射到特定的Java类,其属性`name`指定了对应的...

    Hibernate_query查询数据表中的一个字段.

    在使用Hibernate进行查询前,首先需要进行基本的配置,包括创建hibernate.cfg.xml配置文件,设置数据库连接信息,以及实体类和表的映射文件(.hbm.xml)。 三、Entity类与表的映射 在Hibernate中,每一个数据库表都...

    hibernate4.1中文api

    - **值类型**: 包括基本类型、复合类型、集合类型。 - **实体类型**: 映射实体类型的细节。 - **类型分类的意义**: 不同类型的区别及其用途。 - **定制类型**: - **使用org.hibernate.type.Type**: 创建自定义类型...

    hibernate_reference使用指南全

    这种情况下,集合中的每个元素都是一个值类型,而不是实体类型。 - **1.3.5 双向关联** 双向关联意味着两个方向都维护了关联关系。这在实现一对多或多对多的关系时非常常见。 - **1.3.6 处理双向链接** 当处理...

    hibernate_reference

    接着,文档通过建立一个名为EventManager的Web应用程序的实例,详细介绍了如何映射关联、处理集合值类型、实现双向关联、操作Web层并进行部署和测试。这部分内容适合想要掌握Hibernate在实际应用中如何进行对象和...

    hibernate 常用jar 包

    以上这些JAR包构成了Hibernate的基本运行环境,通过它们,开发者可以轻松地将Java对象与数据库表进行映射,执行CRUD(创建、读取、更新、删除)操作,并进行复杂的查询。在实际开发中,通常还会根据需求添加其他的...

Global site tag (gtag.js) - Google Analytics