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数据类型之间的对应表
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 |