国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

spring cache 實(shí)現(xiàn)按照*號(hào)刪除緩存

wawor4827 / 3714人閱讀

摘要:的使用過(guò)程中,刪除緩存只能用具體的刪除,不能使用通配符號(hào),原因是不支持這種通配符用法,可以通過(guò)修改源代碼實(shí)現(xiàn),但這種方式修改了本身代碼,后期升級(jí)維護(hù)不好操作,具體操作方式可以參見命令支持正則刪除地址我們使用改寫實(shí)現(xiàn)具體實(shí)現(xiàn)方式為改寫

spring cache redis的使用過(guò)程中,刪除緩存只能用具體的key刪除,不能使用通配符號(hào),原因是redis不支持del key這種通配符用法,可以通過(guò)修改redis源代碼實(shí)現(xiàn),但這種方式修改了redis本身代碼,后期升級(jí)、維護(hù)不好操作,具體操作方式可以參見:

redis del命令支持正則刪除(pattern)
git地址:redis-del-with-pattern

我們使用改寫spring-redis cache實(shí)現(xiàn)
具體實(shí)現(xiàn)方式為:
改寫:org.springframework.data.redis.cache.RedisCache下的evict方法
原為:cacheWriter.remove(name, createAndConvertCacheKey(key));
改為:cacheWriter.clean(name, createAndConvertCacheKey(key));

spring redis最底層是支持了通配符的方式的,但是經(jīng)過(guò)包裝后就去掉了

具體在項(xiàng)目中的使用實(shí)例如:
在查詢方法上加入緩存:

    @Override
    @Cacheable(keyGenerator = "cacheKeyGenerator")
    public List query(xx x) throws IllegalAccessException {
        return xxxx;
    }

其中cacheKeyGenerator生成如
com.demo.service.impl.xxServiceImpl-query-99986a

刪除或更新時(shí):

    @Override
    @CacheEvict(key = "targetClass.name+"-*"")
    public boolean saveOrUpdate(xx x) {
        return xxxx;
    }

其中key時(shí)spEL表達(dá)式,生成 com.demo.service.impl.xxServiceImpl-*的key

最終效果是在新增或更新時(shí)能刪除所有列表的緩存key

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/62080.html

相關(guān)文章

  • 一起來(lái)學(xué)SpringBoot | 第十篇:使用Spring Cache集成Redis

    摘要:特點(diǎn)具備相當(dāng)?shù)暮玫撵`活性,不僅能夠使用來(lái)定義緩存的和各種,還提供開箱即用的緩存臨時(shí)存儲(chǔ)方案,也支持和主流的專業(yè)緩存例如的集成。其中號(hào)代表這是一個(gè)表達(dá)式,此表達(dá)式可以遍歷方法的參數(shù)對(duì)象,具體語(yǔ)法可以參考的相關(guān)文檔手冊(cè)。 SpringBoot 是為了簡(jiǎn)化 Spring 應(yīng)用的創(chuàng)建、運(yùn)行、調(diào)試、部署等一系列問(wèn)題而誕生的產(chǎn)物,自動(dòng)裝配的特性讓我們可以更好的關(guān)注業(yè)務(wù)本身而不是外部的XML配置,...

    littleGrow 評(píng)論0 收藏0
  • 一起來(lái)學(xué)SpringBoot | 第十篇:使用Spring Cache集成Redis

    摘要:特點(diǎn)具備相當(dāng)?shù)暮玫撵`活性,不僅能夠使用來(lái)定義緩存的和各種,還提供開箱即用的緩存臨時(shí)存儲(chǔ)方案,也支持和主流的專業(yè)緩存例如的集成。其中號(hào)代表這是一個(gè)表達(dá)式,此表達(dá)式可以遍歷方法的參數(shù)對(duì)象,具體語(yǔ)法可以參考的相關(guān)文檔手冊(cè)。 SpringBoot 是為了簡(jiǎn)化 Spring 應(yīng)用的創(chuàng)建、運(yùn)行、調(diào)試、部署等一系列問(wèn)題而誕生的產(chǎn)物,自動(dòng)裝配的特性讓我們可以更好的關(guān)注業(yè)務(wù)本身而不是外部的XML配置,...

    shadajin 評(píng)論0 收藏0
  • SpringBoot 實(shí)戰(zhàn) (十一) | 整合數(shù)據(jù)緩存 Cache

    摘要:前言如題,今天介紹的數(shù)據(jù)緩存。說(shuō)明確實(shí)做了數(shù)據(jù)緩存,第二次的測(cè)試結(jié)果是從數(shù)據(jù)緩存中獲取的,并沒(méi)有直接查數(shù)據(jù)庫(kù)。為為的數(shù)據(jù)做了緩存插入數(shù)據(jù)返回的結(jié)果數(shù)據(jù)庫(kù)中的結(jié)果訪問(wèn)結(jié)果如下圖。后語(yǔ)以上為數(shù)據(jù)緩存的教程。 微信公眾號(hào):一個(gè)優(yōu)秀的廢人如有問(wèn)題或建議,請(qǐng)后臺(tái)留言,我會(huì)盡力解決你的問(wèn)題。 前言 如題,今天介紹 SpringBoot 的數(shù)據(jù)緩存。做過(guò)開發(fā)的都知道程序的瓶頸在于數(shù)據(jù)庫(kù),我們也知道內(nèi)...

    idealcn 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<