導言
從 Spring 1.1.1 開始,EHCache 就作為一種通用緩存解決方案集成進 Spring。
我將示范攔截器的例子,它能把方法返回的結果緩存起來。
利用 Spring IoC 配置 EHCache
在 Spring 里配置 EHCache 很簡單。你只需一個 ehcache.xml 文件,該文件用于配置 EHCache:








































攔截器將使用 ”org.taha.cache.METHOD_CACHE” 區域緩存方法返回結果。下面利用 Spring IoC 讓 bean 來訪問這一區域。














構建我們的 MethodCacheInterceptor
該攔截器實現org.aopalliance.intercept.MethodInterceptor接口。一旦運行起來(kicks-in),它首先檢查被攔截方法是否被配置為可緩存的。這將可選擇性的配置想要緩存的 bean 方法。只要調用的方法配置為可緩存,攔截器將為該方法生成 cache key 并檢查該方法返回的結果是否已緩存。如果已緩存,就返回緩存的結果,否則再次調用被攔截方法,并緩存結果供下次調用。
org.taha.interceptor.MethodCacheInterceptor











































































































MethodCacheInterceptor 代碼說明了:
默認條件下,所有方法返回結果都被緩存了(methodNames 是 null)
緩存區利用 IoC 形成
cacheKey 的生成還包括方法參數的因素(譯注:參數的改變會影響 cacheKey)
使用 MethodCacheInterceptor
下面摘錄了怎樣配置 MethodCacheInterceptor:




























譯注
夏昕所著《Hibernate 開發指南》,其中他這樣描述 EHCache 配置文件的:









