成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

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

wawor4827 / 3788人閱讀

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

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

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

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

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

具體在項目中的使用實例如:
在查詢方法上加入緩存:

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

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

刪除或更新時:

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

其中key時spEL表達式,生成 com.demo.service.impl.xxServiceImpl-*的key

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

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

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/62080.html

相關(guān)文章

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

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

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

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

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

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

    idealcn 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<