1. 程式人生 > >Hibernate的緩存

Hibernate的緩存

緩存 關系 數據查詢 三方 取消 行數據 多個 二級 周期

 如果每次進行數據查詢時都去數據庫裏面執行查詢語句,當系統訪問量大事,肯定對數據庫的壓力很大,所以說有這麽個hibernate緩存技術,當進行查詢時,如果數據在緩存中了hibernate就不用再去管數據庫要了。

緩存就是hibernate中提供的一種進行降低數據庫壓力的技術,hibernate分一級緩存和二級緩存:

一級緩存是session級別的緩存,由session創建和管理,不能取消

主要存放處於托管狀態以及被刪除狀態entity引用,主要是方便持久化操作時Hibernate內部查找entity。一級緩存的生命周期只和session有關,和事務沒有關系。一個session開啟多個事務,這些事務共享同一個一級緩存。


二級緩存主要有三個緩存區域:對象緩存區域、集合緩存區域、查詢緩存區域,各個緩存區域分工不同

Hibernate二級緩存是應用程序級別的(全局)的緩存。對所有session都共享。

Hibernate二級緩存默認是關閉的,而且Hibernate只提供了二級緩存入口,並沒有提供實現,目前第三方實現:ehcache、oscache、Jbosscache等。

Hibernate的緩存