最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot整合redis使用緩存注解詳解

 更新時間:2024年01月15日 09:48:10   作者:Mu_Mu是一只小白  
這篇文章主要介紹了SpringBoot整合redis使用緩存注解詳解,@Cacheable在方法執(zhí)行前判斷對應緩存是否存在,如果存在直接返回緩存結果,否者執(zhí)行方法將結果緩存,適用于查詢類,需要的朋友可以參考下

1.啟動類標明@EnableCaching

@SpringBootApplication
@MapperScan("com.jx.luckyDraw.mapper")
@EnableCaching
public class LuckyDrawApplication {

    public static void main(String[] args) {
        SpringApplication.run(LuckyDrawApplication.class, args);
    }



}

2.常用注解的種類

@Cacheable

@CachePut

@CacheEvict

2.1 作用

  • @Cacheable:在方法執(zhí)行前判斷對應緩存是否存在,如果存在直接返回緩存結果,否者執(zhí)行方法將結果緩存,適用于查詢類。
  • @CachePut:與@Cacheable不同的是@CachePut一定會執(zhí)行方法,并將方法的返回值更新到緩存,適用于更新,插入。
  • @CacheEvict:清除緩存。

2.2 例子

@Cacheable

  @Cacheable(cacheNames = "drawDetails", key = "#userId + ':' + #batchId", unless = "#result ==null")
    public DrawDetailPO getDrawDetails(String userId, Long batchId) {

當getDrawDetails方法的返回值不為null時,將方法的執(zhí)行結果按照#userId + ‘:’ + #batchId 的方式緩存到redis中。

redis中鍵名為:

drawDetails::81466011bd2a7cf40502a08827038390:1490935513660657664

@CacheEvict

 @CacheEvict(value = {"drawBatch", "drawDetails"}, allEntries = true, condition = "#result > 0")
    @Override
    public int newDrawBatchInfo(Integer batchCount) {

當newDrawBatchInfo方法的返回值大于0時,將命名空間為drawBatch" 或者drawDetails的鍵全部刪除。

allEntries 默認為false,當有多個鍵時必須配置true才能刪除。

在這種沒指定key,使用默認keyGenerator 時,必須使用allEntries =true才能刪除

  @Cacheable(cacheNames = "employeeSelectList", unless = "#result ==null")
    public List<HrmEmployeeSelectVO> querySelectList(HrmEmployeeSelectVO employeeSelectVO) {
        return employeeMapper.querySelectList(employeeSelectVO);
    }
@CacheEvict(value = "employeeSelectList",allEntries = true,condition = "#result = true ")

beforeInvocation 屬性:是否在方法執(zhí)行前刪除,默認為false。

到此這篇關于SpringBoot整合redis使用緩存注解詳解的文章就介紹到這了,更多相關SpringBoot整合redis內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 淺談JAVA版本號的問題 Java版本號與JDk版本

    淺談JAVA版本號的問題 Java版本號與JDk版本

    這篇文章主要介紹了淺談JAVA版本號的問題 Java版本號與JDk版本,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • java代碼實現(xiàn)雙向鏈表

    java代碼實現(xiàn)雙向鏈表

    這篇文章主要為大家詳細介紹了java代碼實現(xiàn)雙向鏈表,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • Java實現(xiàn)字符串解析為日期時間的方法示例

    Java實現(xiàn)字符串解析為日期時間的方法示例

    這篇文章主要介紹了Java實現(xiàn)字符串解析為日期時間的方法,結合具體實例形式分析了java日期時間字符串的解析操作相關實現(xiàn)技巧,需要的朋友可以參考下
    2017-04-04
  • Java接口中盡量避免使用數(shù)組

    Java接口中盡量避免使用數(shù)組

    這篇文章主要介紹了Java接口中盡量避免使用數(shù)組的建議,根據(jù)實際示例展示了接口中使用數(shù)組而造成的影響程序速度的現(xiàn)象,需要的朋友可以參考下
    2015-07-07
  • Java的Finalizer引發(fā)的內(nèi)存溢出問題及解決

    Java的Finalizer引發(fā)的內(nèi)存溢出問題及解決

    本文介紹了Java中的Finalizer機制,解釋了當類實現(xiàn)finalize()方法時,JVM的行為和潛在的風險,通過一個示例程序,展示了實現(xiàn)finalize()方法會導致大量對象存活,最終引發(fā)OutOfMemoryError,文章分析了GC日志,解釋了Finalizer線程和主線程之間的競爭
    2025-03-03
  • 使用Spring AntPathMatcher的doMatch方法

    使用Spring AntPathMatcher的doMatch方法

    這篇文章主要介紹了使用Spring AntPathMatcher的doMatch方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 淺談為什么Java中1000==1000為false而100==100為true

    淺談為什么Java中1000==1000為false而100==100為true

    這篇文章主要介紹了淺談為什么Java中1000==1000為false而100==100為true,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • 一文詳解Elasticsearch和MySQL之間的數(shù)據(jù)同步問題

    一文詳解Elasticsearch和MySQL之間的數(shù)據(jù)同步問題

    Elasticsearch中的數(shù)據(jù)是來自于Mysql數(shù)據(jù)庫的,因此當數(shù)據(jù)庫中的數(shù)據(jù)進行增刪改后,Elasticsearch中的數(shù)據(jù),索引也必須跟著做出改變。本文主要來和大家探討一下Elasticsearch和MySQL之間的數(shù)據(jù)同步問題,感興趣的可以了解一下
    2023-04-04
  • Java中ArrayList與順序表的定義與實現(xiàn)方法

    Java中ArrayList與順序表的定義與實現(xiàn)方法

    ArrayList是一個實現(xiàn)List接口的類,底層是動態(tài)類型順序表,本質(zhì)也就是數(shù)組,動態(tài)主要體現(xiàn)在它的擴容機制,下面這篇文章主要給大家介紹了關于Java中ArrayList與順序表的定義與實現(xiàn)的相關資料,需要的朋友可以參考下
    2022-07-07
  • SpringAop切面執(zhí)行順序實踐

    SpringAop切面執(zhí)行順序實踐

    本文介紹Spring AOP中自定義切面與內(nèi)置切面的執(zhí)行順序控制方法,通過@Order注解設置切面優(yōu)先級,確保業(yè)務邏輯正確執(zhí)行,感興趣的可以了解一下
    2026-04-04

最新評論

六安市| 洱源县| 咸丰县| 灯塔市| 夏河县| 屏山县| 祥云县| 永和县| 玉龙| 湘西| 双江| 常山县| 万州区| 台湾省| 方山县| 丘北县| 阳朔县| 高青县| 无棣县| 额济纳旗| 临海市| 灯塔市| 黄龙县| 湘乡市| 和林格尔县| 毕节市| 新乡县| 康平县| 富川| 晋江市| 三河市| 阳信县| 南开区| 沂水县| 岚皋县| 桦甸市| 新野县| 皮山县| 邵武市| 渭南市| 信丰县|