关键字: hibernate 映射
Hibernate映射类型分为两种:内置映射类型和客户化映射类型。内置映射类型负责把一些常见的Java类型映射到相应的SQL类型;此外,Hibernate还允许用户实现UserType或CompositeUserType接口,来灵活地定制客户化映射类型。客户化类型能够把用户定义的Java类型映射到数据库表的相应字段。
一、Hibernate的内置映射类型
1、Java基本类型的Hibernate映射类型
| Hibernate映射类型 | Java类型 | 标准SQL类型 | 大小和取值范围 |
| integer或者int | int或者java.lang.Integer | INTEGER | 4字节 |
| long | long Long | BIGINT | 8字节 |
| short | short Short | SMALLINT | 2字节 |
| byte | byte Byte | TINYINT | 1字节 |
| float | float Float | FLOAT | 4字节 |
| double | double Double | DOUBLE | 8字节 |
| big_decimal | java.math.BigDecimal | NUMERIC | NUMERIC(8,2)8位 |
| character | char Character String | CHAR(1) | 定长字符 |
| string | String | VARCHAR | 变长字符串 |
| boolean | boolean Boolean | BIT | 布尔类型 |
| yes_no | boolean Boolean | CHAR(1) (Y-N) | 布尔类型 |
| true_false | boolean Boolean | CHAR(1) (T-F) | 布尔类型 |
2、Java时间和日期类型的Hibernate映射
| 映射类型 | Java类型 | 标准SQL类型 | 描述 |
| date | util.Date或者sql.Date | DATE | YYYY-MM-DD |
| time | Date Time | TIME | HH:MM:SS |
| timestamp | Date Timestamp | TIMESTAMP | YYYYMMDDHHMMSS |
| calendar | calendar | TIMESTAMP | YYYYMMDDHHMMSS |
| calendar_date | calendar | DATE | YYYY-MM-DD |
3、Java大对象类型的Hibernate映射类型
| 映射类型 | Java类型 | 标准SQL类型 | MySQL类型 | Oracle类型 |
| binary | byte[] | VARBINARY(或BLOB) | BLOB | BLOB |
| text | String | CLOB | TEXT | CLOB |
| serializable | Serializable接口任意实现类 | VARBINARY(或BLOB) | BLOB | BLOB |
| clob | java.sql.Clob | CLOB | TEXT | CLOB |
| blob | java.sql.Blob | BLOB | BLOB | BLOB |
在程序中通过Hibernate来保存java.sql.Clob或者java.sql.Blob实例时,必须包含两个步骤:
l 在一个数据库事务中先保存一个空的Blob或Clob实例。
l 接着锁定这条记录,更新上面保存的Blob或Clob实例,把二进制数据或文本数据写到Blob或Clob实例中。
4、JDK自带的个别Java类的Hibernate映射类型(略)
5、使用Hibernate内置映射类型
二、客户化映
射类型(略)
结束!
转自:http://aumy2008.blogbus.com/logs/13732626.html
本文详细介绍了Hibernate映射类型的两大类:内置映射类型和客户化映射类型。内置映射类型包括Java基本类型、时间和日期类型、大对象类型等,并提供了具体的映射规则和示例。
440

被折叠的 条评论
为什么被折叠?



