匯入依賴
>
>
com.fasterxml.jackson.coregroupid
>
>
jackson-databindartifactid
>
>
2.11.2version
>
dependency
>
>
>
org.springframework.bootgroupid
>
>
spring-boot-starter-data-redisartifactid
>
>
2.2.2.releaseversion
>
dependency
>
>
>
org.springframework.bootgroupid
>
>
spring-boot-starter-cacheartifactid
>
>
2.2.2.releaseversion
>
dependency
>
redistemplate redistemplate
@springboottest
public
class
stringredistemplatetest
@test
public
void
gettest()
//設定過期時間
@test
public
void
expirtest()
//查詢過期時間
@test
public
void
ttltest()
}); system.out.
println
(time);}
//自增
@test
public
void
incrtest()
}
redisconfig
@configuration
public
class
redisconfig
//快取轉換,key轉換成字串,value轉換成json
@bean
public rediscacheconfiguration rediscacheconfiguration()
}
1、@cacheable
引數解釋
example
value
快取的名稱,在 spring 配置中定義,必須指定至少乙個
例如: @cacheable(value=」mycache」) @cacheable(value=
key快取的 key,可以為空,如果指定要按照 spel 表示式編寫,如果不指定,則預設按照方法的所有引數進行組合
@cacheable(value=」testcache」,key=」#username」)
condition
快取的條件,可以為空,使用 spel 編寫,返回 true 或者 false,只有為 true 才進行快取
@cacheable(value=」testcache」,condition=」#username.length()>2」)
屬性名稱
描述示例
methodname
當前方法名
#root.methodname
method
當前方法
#root.method.name
target
當前被呼叫的物件
#root.target
targetclass
當前被呼叫的物件的class
#root.targetclass
args
當前方法引數組成的陣列
#root.args[0]
caches
當前被呼叫的方法使用的cache
#root.caches[0].name
當我們要使用root物件的屬性作為key時我們也可以將「#root」省略,因為spring預設使用的就是root物件的屬性。
2、 @cacheput
3、@cacheevict
@service
public
class
studentservice
//查詢
@cacheable
(value =
"students"
,key =
"methodname"
)public list
selectstudentall()
//更新
@cacheput
(value =
"student"
,key =
"#student.id"
)public student updatestudentbyid
(student student)
//新增
@cacheput
(value =
"student"
,key =
"#student.id"
)public student insertstudent
(student student)
//刪除
@cacheevict
(value =
"student"
,key =
"#id"
)public
void
deletestudent
(int id)
}
註解方式使用 Redis 快取
使用快取有兩個前置步驟 在pom.xml引入依賴 org.springframework.boot spring boot starter web org.springframework.boot spring boot starter data redis org.springframework....
Spring快取註解
快取註解有以下三個 cacheable cacheevict cacheput 1 cacheable value accountcache 這個注釋的意思是,當呼叫這個方法的時候,會從乙個名叫 accountcache 的快取中查詢,如果沒有,則執行實際的方法 即查詢資料庫 並將執行的結果存入快取...
springboot快取註解
enablecaching 開關性註解,在專案啟動類或某個配置類上使用此註解後,則表示允許使用註解的方式進行快取操作 cacheable 可用於類或方法上 在目標方法執行前,會根據key先去快取中查詢看是否有資料,有就直接返回快取中的key對應的value值。不再執行目標方法 無則執行目標方法,並將...