Hibernate核心開發接口

核心開發接口

1. Configuration

1.AnnotationConfigurationsql

2.進行配置信息的管理數據庫

3.用來產生SessionFactory緩存

4.能夠在configure方法中指定hibernate配置文件session

5.只需關注一個方法,即:buildSessionFactory()ui

2.SessionFactory

1.      用來產生和管理Sessionspa

2.      一般狀況下每一個應用只須要一個SessionFactoryhibernate

3.      除非要訪問多個數據庫的狀況代理

4.      關注兩個方法 即:openSession()  getCurrentSession()對象

openSession每次都是新的,須要close接口

getCurrentSession從上下文找,若是有,用舊的,若是沒有,建新的

         1.用途,界定事務邊界

         2.事務提交自動close

 

2.Session

         管理一個數據庫的任務單元

         方法(CRUD)

1.      save()

2.      delete()

3.      update()

4.      saveOrUpdate()

5.      load()

6.      get()

7.      find方法已經超時

8.      getload的區別

    a)       不存在對應記錄時表現不同

    b)       Load返回的是代理對象,等到真正用到對象的內容時才發出sql語句

    c)        Get直接從數據庫加載,不會延遲

9.      Clear方法

    a)       不管是load仍是get,都會首先查找緩存(一級緩存),若是沒有,纔會去數據庫查找,調用clear方法能夠強制清除session緩存。

10.   Query接口

    a)       參考hibernate查詢的內容

11.   Note:

    a)       Hibernate中涉及不少很是很是細節的區別,但在實際應用中用的極少,請你們先享受些項目的樂趣,再來探討這些細節問題。

        i.            好比savepersist的區別

        ii.            Merge,evict等方法

        iii.            SessionFactorygetCurrentSession

相關文章
相關標籤/搜索