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 |