對於Hibernate的一些總結

一、Hibernate工作原理及爲什麼要用?
原理:
1.
讀取並解析配置文件
2.
讀取並解析映射信息,創建SessionFactory
3.
打開Sesssion
4.
創建事務Transation
5.
持久化操作
6.
提交事務
7.
關閉Session
8.
關閉SesstionFactory

二、爲什麼要用:
1.
JDBC訪問數據庫的代碼做了封裝,大大簡化了數據訪問層繁瑣的重複性代碼。
2. Hibernate
是一個基於JDBC的主流持久化框架,是一個優秀的ORM實現。他很大程度的簡化DAO層的編碼工作
3. hibernate
使用Java反射機制,而不是字節碼增強程序來實現透明性。
4. hibernate
的性能非常好,因爲它是個輕量級框架。映射的靈活性很出色。它支持各種關係數據庫,從一對一到多對多的各種複雜關係。

三、 Hibernate是如何延遲加載?
1. Hibernate2
延遲加載實現:a)實體對象 b)集合(Collection
2. Hibernate3
提供了屬性的延遲加載功能;當Hibernate在查詢數據的時候,數據並沒有存在與內存中,當程序真正對數據的操作時,對象才存在與內存中,就實現了延遲加載,他節省了服務器的內存開銷,從而提高了服務器的性能。
3
Hibernate中怎樣實現類之間的關係?(如:一對多、多對多的關係)
類與類之間的關係主要體現在表與表之間的關係進行操作,它們都市對對象進行操作,我們程序中把所有的表與類都映射在一起,它們通過配置文件中的many-to-oneone-to-manymany-to-many

四、說下Hibernate的緩存機制
1.
內部緩存存在Hibernate中又叫一級緩存,屬於應用事物級緩存
2.
二級緩存:
a)
應用及緩存
b)
分佈式緩存
條件:數據不會被第三方修改、數據大小在可接受範圍、數據更新頻率低、同一數據被系統頻繁使用、非 關鍵數據
c)
第三方緩存的實現

五、Hibernate的查詢方式
Sql
Criteria,object comptosition
Hql

1
、 屬性查詢
2
、 參數查詢、命名參數查詢
3
、 關聯查詢
4
、 分頁查詢
5
、 統計函數

六、如何優化Hibernate
1.
使用雙向一對多關聯,不使用單向一對多
2.
靈活使用單向一對多關聯
3.
不用一對一,用多對一取代
4.
配置對象緩存,不使用集合緩存
5.
一對多集合使用Bag,多對多集合使用Set
6.
繼承類使用顯式多態
7.
表字段要少,表關聯不要怕多,有二級緩存撐腰

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章