歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Hibernate中的緩存機制

Hibernate中的緩存機制

日期:2017/3/1 10:27:08   编辑:Linux編程

緩存概念:

緩存是介於應用程序和物理數據源之間,其作用是為了降低應用程序對物理數據源訪問的頻次,從而提高了應用的運行性能。緩存內的數據是對物理數據源中的數據的復制,應用程序在運行時從緩存讀寫數據,在特定的時刻或事件會同步緩存和物理數據源的數據。

緩存的介質一般是內存,所以讀寫速度很快。但如果緩存中存放的數據量非常大時,也會用硬盤作為緩存介質。緩存的實現不僅僅要考慮存儲的介質,還要考慮到管理緩存的並發訪問和緩存數據的生命周期。

Hibernate中的緩存:

Hibernate中的緩存主要分為三大類:

一級緩存:

介質:內存。

生命周期:session級別。

保存對象:實體。

二級緩存:

Hibernater的二級緩存是一個插件,常用的緩存插件有EhCache,OSCache等。

介質:內存和硬盤。

生命周期:SessionFactory級別和JVM級別。

保存對象:實體。

查詢緩存:

一級和二級緩存是針對於ID查詢的緩存策略,對於條件查詢則毫無作用。為此,Hibernate提供了針對條件查詢的Query緩存。

介質:內存和硬盤。

生命周期:不固定,當關聯的表發生改變時,查詢緩存的生命周期結束。

保存對象:緩存普通屬性的結果集和實體對象的結果集的id。

Copyright © Linux教程網 All Rights Reserved