好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Redis實現信息已讀未讀狀態提示

Redis實現信息已讀未讀狀態提示

熱門標簽:西藏教育智能外呼系統價格 太原營銷外呼系統 百度商家地圖標注怎么做 地圖標注如何即時生效 地圖標注費用 玄武湖地圖標注 竹間科技AI電銷機器人 最簡單的百度地圖標注 小紅書怎么地圖標注店

本文為大家分享了Redis實現信息已讀未讀狀態提示的關鍵代碼,希望可以給大家一些啟發,具體內容如下

前提:

假如現在有2個模塊需要提示消息:只要存在用戶在上個時間點之后沒有看過的信息就提示用戶有新的信息

思路如下:

使用hash存儲用戶上次看過的時間,使用sortedset存儲每個模塊的每個信息產生的時間

上代碼:

MapString, String> dataMap = new HashMap>();
 
Jedis jedis=null;
String uid="1";//用戶id
//分類數組
String []cagoryArray={"c1","c2"};
try {
  //連接池獲取連接 jedis=
  //此處獲取用戶的操作時間集合
  MapString, String> map = jedis.hgetAll("u-key-"+uid);
  if (map == null) {
    map = new HashMap>();
  }
  for (String value : cagoryArray) {
    //獲取某個分類下的上次操作時間
    String s = map.get(value);
    if (StringUtils.isBlank(s)) {
      //如果不存在,則設為有新信息
      dataMap.put(value, "1");
    } else {
      //計算從上次操作時間到現在的新的信息數量
      Long zcount = jedis.zcount("c-key-"+value, Double.parseDouble(s), System.currentTimeMillis());
      if (zcount == null || zcount = 0) {
        //不存在或者小于等于0 則沒有新的信息
        dataMap.put(value, "0");
      } else {
        dataMap.put(value, "1");
      }
    }
 
  }
 
}finally {
  if(jedis!=null){
    //歸還連接
  }
}


當有新的信息產生,向相關模塊添加時間:

Jedis jedis=null;
//c1模塊有新的信息
String cid="c1";
 
try {
  //連接池獲取連接 jedis=
 
  //添加到sortedset結果 權重為時間毫秒
  long currentTimeMillis = System.currentTimeMillis();
  jedis.zadd("c-key-"+cid, currentTimeMillis, String.valueOf(currentTimeMillis));
 
}finally {
  if(jedis!=null){
    //歸還連接
  }
}

當用戶點擊某個模塊時,更新用戶查看該模塊的上次時間:

Jedis jedis=null;
//c1模塊有新的信息
String cid="c1";
//用戶id
String uid="1";
 
try {
  //連接池獲取連接 jedis=
 
  //添加到sortedset結果 權重為時間毫秒
  jedis.hset("u-key-"+uid, cid, String.valueOf(System.currentTimeMillis()));
 
}finally {
  if(jedis!=null){
    //歸還連接
  }
}

以上就是本文的全部內容,希望對大家的學習有所幫助。

您可能感興趣的文章:
  • Android實現獲取未接來電和未讀短信數量的方法
  • JS非Alert實現網頁右下角“未讀信息”效果彈窗
  • Android仿QQ滑動彈出菜單標記已讀、未讀消息

標簽:揚州 澳門 林芝 香港 廣東 景德鎮 唐山 贛州

巨人網絡通訊聲明:本文標題《Redis實現信息已讀未讀狀態提示》,本文關鍵詞  Redis,實現,信息,已讀,未讀,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Redis實現信息已讀未讀狀態提示》相關的同類信息!
  • 本頁收集關于Redis實現信息已讀未讀狀態提示的相關信息資訊供網民參考!
  • 推薦文章