关闭

redis hset使用

1031人阅读 评论(0) 收藏 举报
redis hset使用

首先我来说一下场景:

原来是程序是这样的,在网站上面有一个网友互动的聊天平台  可以发送聊天记录,然后把这些记录都存储到数据库中,初始化的时候从数据库取出来存储到一个static map里面,然后页面发送消息的时候更新这个map以及数据库,每秒取一次,取得是map中的数据。

现在我需要把这个map缓存机制换为redis

//判断redis中是否有这个map redisUtil见前篇
 if (redisutil.HASH.hlen("ctl:sub_id:" + sub_id) > 0L) {
          cb.setIndex_num((int)redisutil.HASH.hlen("ctl:sub_id:" + sub_id));
        }
//把插元素到map里面 redisutil类这里三个参数都是byte[]
        redisutil.HASH.hset("ctl:sub_id:" + sub_id, cb.getChat_id(),SerializableUtil.serialize(cb));

//获取数据的时候



 if ((is_t_audit == 1) && ((int)redisutil.HASH.hlen("atl:sub_id:" + sub_id) > 0))
      {
        //前面是以参数byte[]形式插入的 但是这里可以用string的方式取出来
        Map<String,String> amap = redisutil.HASH.hgetAll("atl:sub_id:" + sub_id);
        for (String s : amap.keySet()) {
        //这里需要返回byte[]那么参数要为byte[]
          byte []temp= redisutil.HASH.hget(("atl:sub_id:" +                        sub_id).getBytes(),s.getBytes());
          ChatBean cb = (ChatBean)SerializableUtil.deserialize(temp);
          tL.add(cb);
        }
      }


1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:28379次
    • 积分:895
    • 等级:
    • 排名:千里之外
    • 原创:59篇
    • 转载:38篇
    • 译文:0篇
    • 评论:1条
    文章分类
    最新评论