Redis快取註解

2021-10-24 09:09:51 字數 2990 閱讀 6973

匯入依賴

>

>

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值。不再執行目標方法 無則執行目標方法,並將...