欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解決@Cacheable在同一個(gè)類中方法調(diào)用不起作用的問(wèn)題

 更新時(shí)間:2021年07月17日 15:50:21   作者:seapeak007  
這篇文章主要介紹了解決@Cacheable在同一個(gè)類中方法調(diào)用不起作用的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

@Cacheable在同一類中方法調(diào)用無(wú)效

上述圖片中,同一個(gè)類中g(shù)enLiveBullets()方法調(diào)用同類中的queryLiveByRoom()方法,這樣即便標(biāo)識(shí)了Cacheable標(biāo)簽,再次調(diào)用時(shí)也沒(méi)有走緩存。

cacheable不支持內(nèi)部方法調(diào)用的方式,需要修改為把請(qǐng)求緩存的改成service方式,Aservice中的genLiveBullets()調(diào)用Bservice中的queryLiveByRoom()

見(jiàn)下圖,已測(cè)試再次調(diào)用時(shí)為走的緩存。

@Cacheable的使用總結(jié)

@Cacheable(value = "PERSON",key = "#tagId+'_'+#zz")
public List<Person> getPersonByTagid(Long tagId,String zz)
  1. 其中value表示該方法返回的參數(shù)的緩存存在那個(gè)Cache里(即為緩存塊的名字)
  2. 緩存結(jié)果以一個(gè)鍵值對(duì)存放在緩存中,注解中key即為鍵值對(duì)的key;value即為方法返回的結(jié)果
  3. key用雙引號(hào),里面#加上方法的參數(shù):獲取方法的參數(shù), ''表示在參數(shù)之間添加分隔符

常規(guī)使用方法

  1. 在springboot的啟動(dòng)類上使用@EnableCaching//開(kāi)啟緩存
  2. 在方法上直接使用@Cacheable()使用緩存

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論