spring中的緩存
阿新 • • 發佈:2017-12-01
spring緩存Spring中的cache是為方法做緩存的,spring只是提供了個緩存抽象,具體的實現由的三方提供。
要使用Spring緩存,需要以下三步
1.向Spring配置文件導入context:命名空間
2.在Spring配置文件啟用緩存,具體是添加 <cache:annotation-driven cache-manager="緩存管理器ID" />
3.配置緩存管理器,不同的緩存實現配置不同,如果是EhCache,需要先配置一個ehcache.xml
一、spring緩存配置的兩種方法
Spring的緩存方式有兩種,一種是直接緩存在內存中,不算真正的緩存實現。一般不推薦使用。這種內置緩存區,使用 SimpleCacheManager類作為緩存管理器,底層直接使用JDK的CurrentMap來實現緩存,該緩存管理器配置如下:
第二種是使用Ehcache作為緩存配置:EhCache 是一個純Java的進程內緩存框架,具有快速、精幹等特點,是Hibernate中默認的CacheProvider。是一個第三方工具。
1. ehcache.xml的配置
上面的ehcache.xml配置了兩個緩存區,Spring中的Bean將會緩存在這些緩存區中,一般的,Spring容器中有多少個Bean,就會在ehcache中定義多少個緩存區。
2.配置緩存管理器
其中第一個Bean是一個工廠Bean,用來配置EhCache 的CacheManager, 第二個Bean才是為Spring緩存配置的緩存管理器,所以將第一個Bean註入第二個Bean。
二、相關註解的解釋
@Cacheable
@CachePut
@CacheEvict
spring中的緩存