Redis Java 常用API

Redis Java 常用API总结:

 /**
     * Redis基本(键)操作
     * 删除
     * @return 被删除 key 的数量
     */
    public Long delete(String... keys){
        return jedis.del(keys);
    }
/**
     * Redis基本(键)操作
     * 返回 key 所储存的值的类型。
     * @return none(key不存在),string(字符串),list(列表),set(集合),zset(有序集),hash(哈希表)
     */
    public String type(String key){
        return jedis.type(key);
    }
/**
     * Redis基本(键)操作
     * 获取键列表
     */
    public Set<String> keys(String pattern){
        return jedis.keys(pattern);
    }
/**
     * Redis基本(键)操作
     * 查看某个key的剩余生存时间:time to live
     * @return 当 key 不存在或没有设置生存时间时,返回 -1 。否则,返回 key 的剩余生存时间(以秒为单位)。
     */
    public Long ttl(String key){
        return jedis.ttl(key);
    }

/**
     * Redis基本(键)操作
     * 查看某个key是否存在
     * @param key
     * @return
     */
    public Boolean exists(String key){
        return jedis.exists(key);
    }

/**
     * Redis基本(键)操作
     * 设置某一记录的生存时间,过期删除
     * @param key 设置可挥发的key
     * @param seconds 超时时间,单位:秒
     * @return
     */
    public Long expire(String key, int seconds){
        return jedis.expire(key, seconds);
    }
/**
     * Redis基本(键)操作
     * 移除给定 key 的生存时间,将这个 key从可挥发的(带生存时间 key )转换成持久化的(一个不带生存时间、永不过期的 key )
     * @param key
     * @return
     */
    public Long persist(String key){
        return jedis.persist(key);
    }
/**
     * Redis基本(字符串)操作
     * 将设置某个key的值,如果 key 已经持有其他值,就覆写旧值,无视类型。
     * @param key
     * @param value
     * @return
     */
    public String set(String key, String value){
        return jedis.set(key, value);
    }
/**
     * Redis基本(字符串)操作
     * 将 key 的值设为 value ,当且仅当 key不存在,若给定的 key 已经存在,则 SETNX 不做任何动作。
     * set not exists
     * @param value
     * @return
     */
    public Long setnx(String key, String value){
        return jedis.setnx(key, value);
    }
/**
     * Redis基本(字符串)操作
     * 将值 value 关联到 key ,并将 key 的生存时间设为 seconds (以秒为单位)。
     * @param key
     * @param seconds
     * @param value
     * @return
     */
    public String setex(String key, int seconds, String value){
        return jedis.setex(key, seconds, value);
    }
/**
     * Redis基本(字符串)操作
     * 返回 key 所关联的字符串值。
     * @param key
     * @return
     */
    public String get(String key){
        return jedis.get(key);
    }
/**
     * Redis基本(字符串)操作
     * 将 key 中储存的数字值增一。
     * 如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 INCR 操作。
     * 如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。
     * @param key
     * @return
     */
    public Long incr(String key){
        return jedis.incr(key);
    }
/**
     * Redis基本(字符串)操作
     * 将 key 中储存的数字值增加固定制。
     * 如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 INCR 操作。
     * 如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。
     * @param key
     * @return
     */
    public Long incrBy(String key, long increase){
        return jedis.incrBy(key, increase);
    }
/**
     * Redis基本(字符串)操作
     * 将 key 中储存的数字值减一。
     * 如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 DECR 操作。
     * 如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。
     * @param key
     * @return
     */
    public Long decr(String key){
        return jedis.decr(key);
    }
/**
     * Redis基本(字符串)操作
     * 将 key 中储存的数字值减少固定制。
     * 如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 DECR 操作。
     * 如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。
     * @param key
     * @return
     */
    public Long decrBy(String key, long decrease){
        return jedis.decrBy(key, decrease);
    }
/**
     * Hash操作
     * 设置字段值
     * @return 如果 field 是哈希表中的一个新建域,并且值设置成功,返回 1;如果哈希表中域 field 已经存在且旧值已被新值覆盖,返回 0 。
     */
    public Long hset(String hkey, String field, String value){
        return jedis.hset(hkey, field, value);
    }
/**
     * Hash操作
     * 将哈希表 key 中的域 field 的值设置为 value ,当且仅当域 field 不存在
     * 若域 field 已经存在,该操作无效。
     * 如果 key 不存在,一个新哈希表被创建并执行 HSETNX 命令
     * @return 设置成功,返回 1 。如果给定域已经存在且没有操作被执行,返回 0 。
     */
    public Long hsetnx(String hkey, String field, String value){
        return jedis.hsetnx(hkey, field, value);
    }
/**
     * Hash操作
     * 同时将多个 field-value (域-值)对设置到哈希表 key 中
     * 此命令会覆盖哈希表中已存在的域
     * 如果 key 不存在,一个空哈希表被创建并执行 HMSET 操作。
     * @return 如果命令执行成功,返回 OK
     */
    public String hmset(String hkey, Map<String, String> hash){
        return jedis.hmset(hkey, hash);
    }
/**
     * Hash操作
     * 返回哈希表 key 中给定域 field 的值。
     * @return 给定域的值
     */
    public String hget(String hkey, String field){
        return jedis.hget(hkey, field);
    }
/**
     * Hash操作
     * 返回哈希表中,所有的域和值
     * @return 以列表形式返回哈希表的域和域的值
     */
    public Map<String, String> hgetAll(String hkey){
        return jedis.hgetAll(hkey);
    }
/**
     * Hash操作
     * 删除哈希表中的一个字段,字段不存在将被忽略
     * @return 被成功移除的域的数量,不包括被忽略的域
     */
    public Long hdel(String hkey, String field){
        return jedis.hdel(hkey, field);
    }
/**
     * Hash操作
     * 返回哈希表中字段的数量
     * @return 哈希表中域的数量,当 key 不存在时,返回 0 。
     */
    public Long hlen(String hkey){
        return jedis.hlen(hkey);
    }
/**
     * Hash操作
     * 查看哈希表 key 中,给定field 是否存在
     * @return
     */
    public Boolean hexists(String hkey, String field){
        return jedis.hexists(hkey, field);
    }
/**
     * Hash操作
     * 为哈希表 key 中的域 field 的值加上增量 increment
     * @return
     */
    public Long hincrBy(String hkey, String field, long increment){
        return jedis.hincrBy(hkey, field, increment);
    }
/**
     * Hash操作
     * 返回哈希表 key 中的所有域
     * @return
     */
    public Set<String> hkeys(String hkey){
        return jedis.hkeys(hkey);
    }
/**
     * Hash操作
     * 返回哈希表 key 中所有域的值
     * @return
     */
    public List<String> hvals(String hkey){
        return jedis.hvals(hkey);
    }
 /**
     * List操作
     * 将一个值 value 插入到列表 key 的表头
     * 当 key 存在但不是列表类型时,返回一个错误
     * @return 执行 LPUSH 命令后,列表的长度
     */
    public Long lpush(String lkey, String value){
        return jedis.lpush(lkey, value);
    }
/**
     * List操作
     * 将一个值 value 插入到列表 key 的表尾(最右边)
     * 当 key 存在但不是列表类型时,返回一个错误
     * @return 执行 RPUSH 操作后,列表的长度
     */
    public Long rpush(String lkey, String value){
        return jedis.rpush(lkey, value);
    }
/**
     * List操作
     * 移除并返回列表 key 的头元素
     * @return 列表的头元素
     */
    public String lpop(String lkey){
        return jedis.lpop(lkey);
    }

    /**
     * List操作
     * 移除并返回列表 key 的尾元素
     * @return 列表的尾元素
     */
    public String rpop(String lkey){
        return jedis.rpop(lkey);
    }
/**
     * List操作
     * @return 返回列表的长度
     */
    public Long llen(String lkey){
        return jedis.llen(lkey);
    }
/**
     * List操作
     * 返回列表中指定区间内的元素,区间以偏移量 start 和 end 指定
     * 也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推
     * @return
     */
    public List<String> lrange(String lkey, int start, int end){
        return jedis.lrange(lkey, start, end);
    }

/**
     * List操作
     * 根据参数 count 的值,移除列表中与参数 value 相等的元素
     * count = 0 : 移除表中所有与 value 相等的值
     * count > 0 : 从表头开始向表尾搜索,移除与 value 相等的元素,数量为 count
     * count < 0 : 从表尾开始向表头搜索,移除与 value 相等的元素,数量为 count 的绝对值
     * @return 被移除元素的数量
     */
    public Long lrem(String lkey, int count, String value){
        return jedis.lrem(lkey, count, value);
    }
/**
     * List操作
     * 将列表 key 下标为 index 的元素的值设置为 value
     * @return
     */
    public String lset(String lkey, long index, String value){
        return jedis.lset(lkey, index, value);
    }
/**
     * Set操作
     * 将一个或多个 member 元素加入到集合 key 当中,已经存在于集合的 member 元素将被忽略
     * 假如 key 不存在,则创建一个只包含 member 元素作成员的集合
     * 当 key 不是集合类型时,返回一个错误
     * @return 被添加到集合中的新元素的数量,不包括被忽略的元素
     */
    public Long sadd(String skey, String member){
        return jedis.sadd(skey, member);
    }
 /**
     * Set操作
     * 移除集合 key 中的一个或多个 member 元素,不存在的 member 元素会被忽略
     * @return 被成功移除的元素的数量,不包括被忽略的元素。
     */
    public Long srem(String skey, String member){
        return jedis.srem(skey, member);
    }
/**
     * Set操作
     * 返回集合 key 中的所有成员
     * 不存在的 key 被视为空集合
     * @return 集合中的所有成员
     */
    public Set<String> smembers(String skey){
        return jedis.smembers(skey);
    }
/**
     * Set操作
     * 判断 member 元素是否集合 key 的成员
     * @return 如果 member 元素是集合的成员,返回true
     */
    public Boolean sismember(String skey, String member){
        return jedis.sismember(skey, member);
    }
/**
     * Set操作
     * 返回集合 key 的基数(集合中元素的数量)
     * @return 集合的基数
     */
    public Long scard(String skey){
        return jedis.scard(skey);
    }
/**
     * Set操作
     * 移除并返回集合中的一个元素
     * @return 被移除的元素
     */
    public String spop(String skey){
        return jedis.spop(skey);
    }
/**
     * Set操作
     * 返回一个集合的全部成员,该集合是所有给定集合的交集
     * 当给定集合当中有一个空集时,结果也为空集(根据集合运算定律)
     * @return 交集成员的列表
     */
    public Set<String> sinter(String... skeys){
        return jedis.sinter(skeys);
    }
/**
     * Set操作
     * 返回一个集合的全部成员,该集合是所有给定集合的并集
     * @return 并集成员的列表
     */
    public Set<String> sunion(String... skeys){
        return jedis.sunion(skeys);
    }
/**
     * Set操作
     * 返回一个集合的全部成员,该集合是所有给定集合之间的差集
     * @return 交集成员的列表
     */
    public Set<String> sdiff(String... skeys){
        return jedis.sdiff(skeys);
    }
/**
     * Sorted set操作(有序集)
     * 将一个 member 元素及其 score 值加入到有序集 key 当中
     * @return 被成功添加的新成员的数量,不包括那些被更新的、已经存在的成员
     */
    public Long zadd(String zkey, double score, String member){
        return jedis.zadd(zkey, score, member);
    }
/**
     * Sorted set操作(有序集)
     * 移除集合 key 中的一个或多个 member 元素,不存在的 member 元素会被忽略
     * 当 key 不是集合类型,返回一个错误
     * @return 被成功移除的元素的数量,不包括被忽略的元素
     */
    public Long zrem(String zkey, String member){
        return jedis.zrem(zkey, member);
    }
/**
     * Sorted set操作(有序集)
     * 返回有序集 key 的基数
     * @return 当 key 存在且是有序集类型时,返回有序集的基数;当 key 不存在时,返回 0
     */
    public Long zcard(String zkey){
        return jedis.zcard(zkey);
    }
/**
     * Sorted set操作(有序集)
     * 返回有序集 key 中, score 值在 min 和 max 之间(默认包括 score 值等于 min 或 max )的成员
     * @return score 值在 min 和 max 之间的成员的数量
     */
    public Long zcount(String zkey, double min, double max){
        return jedis.zcount(zkey, min, max);
    }
 /**
     * Sorted set操作(有序集)
     * 返回有序集 key 中,成员 member 的 score 值
     * @return member 成员的 score 值
     */
    public Double zscore(String zkey, String member){
        return jedis.zscore(zkey, member);
    }
/**
     * Sorted set操作(有序集)
     * 为有序集 key 的成员 member 的 score 值加上增量 increment
     * @return member 成员的新 score 值
     */
    public Double zincrby(String zkey, double increment, String member){
        return jedis.zincrby(zkey, increment, member);
    }
/**
     * Sorted set操作(有序集)
     * 返回有序集 key 中,指定区间内的成员
     * 其中成员的位置按 score 值递增(从小到大)来排序
     * 你也可以使用负数下标,以 -1 表示最后一个成员, -2 表示倒数第二个成员,以此类推
     * @return 指定区间内,有序集成员的列表
     */
    public Set<String> zrange(String zkey, int start, int end){
        return jedis.zrange(zkey, start, end);
    }

/**
     * Sorted set操作(有序集)
     * 返回有序集 key 中,指定区间内的成员
     * 其中成员的位置按 score 值递减(从大到小)来排序
     * 你也可以使用负数下标,以 -1 表示最后一个成员, -2 表示倒数第二个成员,以此类推
     * @return 指定区间内,有序集成员的列表
     */
    public Set<String> zrevrange(String zkey, int start, int end){
        return jedis.zrevrange(zkey, start, end);
    }

 /**
     * 返回有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。有序集成员按 score 值递增(从小到大)次序排列。
     * @param zkey
     * @param min
     * @param max
     * @return
     */
    public Set<String> zrangeByScore(String zkey, double min, double max){
        return jedis.zrangeByScore(zkey, min, max);
    }
/**
     * 返回有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。
     * 有序集成员按 score 值递增(从小到大)次序排列。
     * @param zkey
     * @param min 在不知道最小值时,可以用 -inf代替最小值
     * @param max 在不知道最大值时,可以用 +inf代替最大值
     * @return
     */
    public Set<String> zrangeByScore(String zkey, String min, String max){
        return jedis.zrangeByScore(zkey, min, max);
    }
 /**
     * Sorted set操作(有序集)
     * 返回有序集 key 中成员 member 的排名。其中有序集成员按 score 值递增(从小到大)顺序排列。
     * @return 如果 member 是有序集 key 的成员,返回 member 的排名
     */
    public Long zrank(String zkey, String member){
        return jedis.zrank(zkey, member);
    }
/**
     * Sorted set操作(有序集)
     * 返回有序集 key 中成员 member 的排名。其中有序集成员按 score 值递减(从大到小)排序
     * @return 如果 member 是有序集 key 的成员,返回 member 的排名
     */
    public Long zrevrank(String zkey, String member){
        return jedis.zrevrank(zkey, member);
    }
 /**
     * Sorted set操作(有序集)
     * 移除有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。
     * @return 被移除成员的数量
     */
    public Long zremrangeByScore(String zkey, double start, double end){
        return jedis.zremrangeByScore(zkey, start, end);
    }
 /**
     * Sorted set操作(有序集)
     * 移除有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。
     * @param zkey
     * @param start 在不知道最小值时,可以用 -inf代替最小值
     * @param end 在不知道最大值时,可以用 +inf代替最大值
     * @return
     */
    public Long zremrangeByScore(String zkey, String start, String end){
        return jedis.zremrangeByScore(zkey, start, end);
    }

/**
     * 事务操作
     * 事务块内的多条命令会按照先后顺序被放进一个队列当中,最后由 EXEC 命令原子性(atomic)地执行。
     * @param block
     * @return
     */
    public List<Object> multiResult(TransactionBlock block){
        return jedis.multi(block);
    }
/**
     * 事务操作
     * 标记一个事务块的开始
     * @return Transaction对象,可基于Transaction操作
     */
    public Transaction multi(){
        return jedis.multi();
    }

    public Long publish(String channel, String message){
        return jedis.publish(channel, message);
    }

    public void subscribe(JedisPubSub pubSub, String... channels){
        jedis.subscribe(pubSub, channels);
    }

/**
     * 从redis中获取对象值 <br/>
     * get <br/>
     * @param key 二进制key<br/>
     * @throws <br/>
     * @since Ver1.0 <br/>
     *  <br/>
     */
    public byte[] get(byte[] key){
        return jedis.get(key);
    }
 /**
     * 从redis中根据key删除对象值<br/>
     * del <br/>
     * @param  <br/>
     * @throws <br/>
     * @since Ver1.0 <br/>
     *  <br/>
     */
    public long del(byte[] key){
        return jedis.del(key);
    }

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,847评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,208评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,587评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,942评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,332评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,587评论 1 218
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,853评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,568评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,273评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,542评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,033评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,373评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,031评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,073评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,830评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,628评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,537评论 2 269

推荐阅读更多精彩内容