日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Hibernate基礎(chǔ):核心接口和數(shù)據(jù)類型

一 Hibernate中的核心接口.

有五個核心接口幾乎在每個Hibernate應(yīng)用中都會用到,是Hibernate基礎(chǔ)中的基礎(chǔ)。使用這些接口,你可以存儲與取出持續(xù)對象或者對事務(wù)進行控制。

1 Configuration接口

Configuration(配置)對象用來配置和引導(dǎo)Hibernate。應(yīng)用使用一個配置實例來指定映射文件的位置和Hibernate的特定屬性,然后創(chuàng)建會話工廠。即使配置接口只擔(dān)當了整個Hibernate應(yīng)用范圍內(nèi)一個相對較小的部分,但它卻是在你開始使用Hibernate時遇到的***個對象。

2 SessionFactory接口

應(yīng)用從SessionFactory(會話工廠)里獲得會話實例。與會話接口相比,這個對象不夠令人興奮。會話工廠當然不是輕量級的!它打算在多個應(yīng)用線程間進行共享。典型地,整個應(yīng)用只有***的一個會話工廠——例如在應(yīng)用初始化時被創(chuàng)建。然而,如果你的應(yīng)用使用Hibernate訪問多個數(shù)據(jù)庫,你需要對每一個數(shù)據(jù)庫使用一個會話工廠。會話工廠緩存了生成的SQL語句和Hibernate在運行時使用的映射元數(shù)據(jù)。它也保存了在一個工作單元中讀入的數(shù)據(jù)并且可能在以后的工作單元中被重用(只有類和集合映射指定了這種二級緩存是想要的時才會如此)。

3 Session接口

Session(會話)接口是Hibernate應(yīng)用使用的主要接口。會話接口的實例是輕量級的并且創(chuàng)建與銷毀的代價也不昂貴。這很重要,因為你的應(yīng)用可能始終在創(chuàng)建與銷毀會話,可能每一次請求都會如此。Hibernate會話并不是線程安全的,因此應(yīng)該被設(shè)計為每次只能在一個線程中使用。

Hibernate會話是一個介于連接和事務(wù)之間的概念。你可以簡單地認為會話是對于一個單獨的工作單元已裝載對象的緩存或集合。Hibernate可以檢測到這個工作單元中對象的改變。我們有時也將會話稱為持續(xù)性管理器,因為它也是與持續(xù)性有關(guān)的操作。例如存儲和取出對象的接口。注意,Hibernate會話與Web層的HttpSession沒有任何關(guān)系。當我們在本書中使用會話時,我們指的是Hibernate會話。為了區(qū)別,有時我們將HttpSession對象稱為用戶會話。

4 Query與Criteria接口

Query(查詢)接口允許你在數(shù)據(jù)庫上執(zhí)行查詢并控制查詢?nèi)绾螆?zhí)行。查詢使用HQL或者本地數(shù)據(jù)庫的SQL方言編寫。查詢實例用來綁定查詢參數(shù),限定查詢返回的結(jié)果數(shù),并且最終執(zhí)行查詢。

Criteria(標準)接口非常小,它允許你創(chuàng)建和執(zhí)行面向?qū)ο蟮臉藴什樵?。為了幫助?yīng)用代碼減少冗余,Hibernate在會話接口上提供了一些快捷方法,允許你可以在一行代碼內(nèi)調(diào)用一個查詢。

5 Transaction接口

Transaction(事務(wù))接口是一個可選的API。Hibernate應(yīng)用可以選擇不使用這個接口,而是在它們自己的底層代碼中管理事務(wù)。事務(wù)將應(yīng)用代碼從下層的事務(wù)實現(xiàn)中抽象出來——這可能是一個JDBC事務(wù),一個JTA用戶事務(wù)或者甚至是一個公共對象請求代理結(jié)構(gòu)(CORBA)——允許應(yīng)用通過一組一致的API控制事務(wù)邊界。這有助于保持Hibernate應(yīng)用在不同類型的執(zhí)行環(huán)境或容器中的可移植性。

二 Hibernate數(shù)據(jù)類型

一個基礎(chǔ)的并且非常強大的體系結(jié)構(gòu)元素是Hibernate的類型的概念。Hibernate的類型對象將一個Java類型映射到數(shù)據(jù)庫字段的類型(實際上,類型可能跨越多個字段)。持續(xù)類所有的持續(xù)屬性,包括關(guān)聯(lián),都有一個對應(yīng)的Hibernate類型。這種設(shè)計使Hibernate變得極端靈活并易于擴展。

內(nèi)建類型的范圍非常廣泛,覆蓋了所有的Java基礎(chǔ)類型和許多JDK類,包括java.util.Currency,java.util.Calendar,byte[]和va.io.Serializable。甚至更好一些,Hibernate支持用戶自定義類型。它提供了UserType和serType接口允許你增加自己的類型。使用這個特征,應(yīng)用使用的共通類例如Address,Name或MonetaryAmount就可以方便優(yōu)雅地進行處理了。自定義類型被認為是Hibernate的重要特征,并鼓勵你對它們進行新的或創(chuàng)造性的使用.

【編輯推薦】

  1. Hibernate對各數(shù)據(jù)庫的連接方言
  2. Hibernate支持Access方言源代碼
  3. eclipse下生成HibernateDAO中的幾個方法
  4. hibernate中update與saveOrUpdate的區(qū)別
  5. HIBERNATE方言

新聞標題:Hibernate基礎(chǔ):核心接口和數(shù)據(jù)類型
鏈接地址:http://www.5511xx.com/article/cdeisdd.html