@CachePut 更新數據庫,更新緩存


關於更新緩存 ,要注意 得兩點:

一、

@Cacheable 的key 要和 @CachePut 的key 一致

比如:

  @Cacheable(key = "'userCache'") //緩存,
    public Uuser findByEmail(String email) {

        System.err.println("執行這里,說明緩存中讀取不到數據,直接讀取數據庫....");
        return redisMapper.findByEmail(email);
    }
  @CachePut(key = "'userCache'") //userCache要加‘’單引號,表示這是一個字符串
    public Uuser updateSelf(String nickname, String email) {
        System.err.println("執行這里,更新數據庫,更新緩存....");
        uuserMapper.updateSelf(nickname, email);
        Uuser uuser = redisMapper.findByEmail(email);

        return uuser;


    }

二、@CachePut的  返回值 要和 @Cacheable 的返回值 一樣,如果@Cacheable 返回的是一個對象,@CachePut 返回也要是對象,否則會報類型轉換異常,如上代碼 返回的都是 Uuser.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM