>
>
org.springframework.bootgroupid
>
>
spring-boot-starter-data-redisartifactid
>
dependency
>
>
>
org.apache.commonsgroupid
>
>
commons-pool2artifactid
>
>
2.6.0version
>
dependency
>
@configuration
@enablecaching
public
class
redisconfig
extends
cachingconfigurersupport
@bean
public cachemanager cachemanager
(redisconnectionfactory factory)
}
@cacheable
:根據方法對返回結果進行快取,下次請求時,如果快取存在,則直接讀取快取資料返回,如果快取不存在,則執行方法,並把返回結果存入快取,一般用在查詢方法上
@cacheput
:每次都會執行方法,並將結果存入快取,其他方法可以直接讀取,一般用在新增方法上
@cacheevict
:會清除指定的快取,一般用在更新或刪除方法上
註解1和2的屬性
註解屬性
作用value
必填,快取名,指定命名空間
cachenames
和value類似
key可選,可以用spel自定義key
註解3多出兩個
註解屬性
作用allentries
如果指定為true,方法呼叫將清空所有快取
beforeinvocation
是否在方法執前清空,預設為false
spring.redis.host=127.0.0.1
spring.redis.port=6379
spring.redis.database= 0
spring.redis.timeout=1800000
value +
"::"
+ key 的格式
例如: @cacheable
(value =
"space"
, key =
"'key'"
)快取的鍵就是:
space:
:key
key
中如果是字串需要加單引號,如果是spel
則不需要 spring cache簡單使用
spring從3.1起自帶了cache功能。可以快取乙個方法的返回值,也就是說如果有快取,spring就會直接使用快取值,而不會再去執行這個方法 cashe相關的功能是在spring context.4.2.5.release.jar這個jar包中的。然後,開啟cache註解,配置cachemana...
SpringCache自我學習
cacheable 把查詢出來的資料放到快取 cacheevict 更新 刪除模式 cacheput 更新 雙寫模式 cacheable value是分割槽名 key是快取名 configuration enablecaching 開啟快取 enableconfigurationproperties...
springCache註解詳解
1 首先springcache需要匯入一下依賴 org.springframework.boot spring boot starter cache 2.1 cacheable 2.1.1 cacheable 屬性 cacheable 將方法的執行結果進行快取 以後再要相同資料,直接找快取中獲取,不...