jedis工具类

import redis.clients.jedis.BinaryClient;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

import java.util.List;
import java.util.Map;
import java.util.Set;

/**

  • 工具类

  • @Author mufeng

  • @Date 2019-5-22 15:34
    */
    public class RedisUtils {
    private Jedis jedis;
    public RedisUtils(){
    JedisPool pool = getPool();
    jedis=pool.getResource();
    }
    public JedisPool getPool(){
    JedisPool pool=null;
    JedisPoolConfig config = new JedisPoolConfig();
    config.setMaxIdle(Integer.parseInt(“50”));
    config.setMaxTotal(Integer.parseInt(“1000”));
    config.setMaxWaitMillis((long)Integer.parseInt(“3000”));
    config.setTestOnBorrow(Boolean.parseBoolean(“true”));
    config.setTestOnReturn(Boolean.parseBoolean(“true”));
    config.setTimeBetweenEvictionRunsMillis(-1L);
    String ip=“10.20.24.113”;
    int port=6379;
    String password=“redispass”;
    pool=new JedisPool(config,ip,port,2000,password);
    return pool;
    }
    public String get(String key){
    return jedis.get(key);
    }
    public String set(String key,String value){
    return jedis.set(key,value);
    }
    public Long del(String… keys){
    return jedis.del(keys);
    }

    /**

    • 通过key向指定的value追加值
    • @param key
    • @param str
    • @return
      */
      public Long append(String key,String str){
      return jedis.append(key,str);
      }
      public Boolean exist(String key){
      return jedis.exists(key);
      }

    /**

    • 设置key-value,若key已存在返回0 则返回1
    • @param key
    • @param value
    • @return
      */
      public Long setnx(String key,String value){
      return jedis.setnx(key,value);
      }

    /**

    • 设置key-value并指定键值的有效期
    • @param key
    • @param seconds 以秒为单位
    • @param value
    • @return
      */
      public String setex(String key,int seconds,String value){
      return jedis.setex(key,seconds,value);
      }

    /**

    • 从指定的位置替换原先value aa 1 tt ->atta
    • 值不存在也会有空格 ee 1 uu->" uu"
    • @param key
    • @param offset
    • @param str
    • @return
      */
      public Long setrange(String key,int offset,String str){
      return jedis.setrange(key,offset,str);
      }

    /**

    • 通过批量keys获取批量values
    • @param keys
    • @return
      */
      public List mget(String… keys){
      return jedis.mget(keys);
      }

    /**

    • 批量设置keyvalues,也可以一个 “key”,“value”,…
    • @param keyvalues
    • @return
      */
      public String mset(String… keyvalues){
      return jedis.mset(keyvalues);
      }

    /**

    • 批量设置keyvalues,也可以一个 如果key存在则会失败,操作回滚
    • @param keyvalues
    • @return
      */
      public Long msetnx(String… keyvalues){
      return jedis.msetnx(keyvalues);
      }

    /**

    • 设置key的值,返回一个旧值,key不存在,也会设置
    • @param key
    • @param value
    • @return
      */
      public String getSet(String key,String value){
      return jedis.getSet(key,value);
      }

    /**

    • 通过key和指定下标获取指定下标的值
    • @param key
    • @param startOffset
    • @param endOffset
    • @return
      */
      public String getrange(String key,int startOffset,int endOffset){
      return jedis.getrange(key,startOffset,endOffset);
      }

    /**

    • 通过key对value加1操作,如果value不是int类型会返回错误,如果key不存在,value为1
    • @param key
    • @return
      */
      public Long incr(String key){
      return jedis.incr(key);
      }

    /**

    • 通过key对value加指定的值,如果value不是int类型会返回错误,若key不存在,value为该值
    • @param key
    • @param integer
    • @return
      /
      public Long incrBy(String key,int integer){
      return jedis.incrBy(key,integer);
      }
      /
      *
    • 通过key对value减去1操作,如果value不是int类型会返回错误,如果key不存在,value为-1
    • @param key
    • @return
      */
      public Long decr(String key){
      return jedis.decr(key);
      }

    /**

    • 通过key对value减去指定的值,如果value不是int类型会返回错误,若key不存在,value为该值
    • @param key
    • @param integer
    • @return
      */
      public Long decrBy(String key,int integer){
      return jedis.decrBy(key,integer);
      }

    /**

    • 通过key获取value的长度
    • @param key
    • @return
      */
      public Long StrLen(String key){
      return jedis.strlen(key);
      }

    /**

    • 通过key给field设置指定的值,若key不存在则先创建,若field已存在,返回0
    • @param key
    • @param field
    • @param value
    • @return
      */
      public Long hsetnx(String key,String field,String value){
      return jedis.hsetnx(key,field,value);
      }

    /**

    • 通过key给field设置指定的值,若key不存在则先创建
    • @param key
    • @param field
    • @param value
    • @return
      */
      public Long hset(String key,String field,String value){
      return jedis.hset(key,field,value);
      }

    /**

    • 通过key同时设置多个field
    • @param key
    • @param hash
    • @return
      */
      public String hmset(String key, Map<String,String>hash){
      return jedis.hmset(key,hash);
      }

    /**

    • 通过key和field获取指定的值
    • @param key
    • @param field
    • @return
      */
      public String hget(String key,String field){
      return jedis.hget(key,field);
      }

    /**

    • 设置key的过期时间秒
    • @param key
    • @param seconds
    • @return
      */
      public Long expirt(String key,int seconds){
      return jedis.expire(key,seconds);
      }

    /**

    • 通过key和fields获取指定的value,如果没有value,返回null
    • @param key
    • @param field
    • @return
      */
      public List hmget(String key,String… field){
      return jedis.hmget(key,field);
      }

    /**

    • 通过key给指定的field加指定的值
    • @param key
    • @param field
    • @param value
    • @return
      */
      public Long hincBy(String key,String field,Long value){
      return jedis.hincrBy(key,field,value);
      }

    /**

    • 通过key和field判断指定的value是否存在
    • @param key
    • @param field
    • @return
      */
      public Boolean hexist(String key,String field){
      return jedis.hexists(key,field);
      }

    /**

    • 通过key返回field数量
    • @param key
    • @return
      /
      public Long hlen(String key){
      return jedis.hlen(key);
      }
      /
      *
    • 通过key删除指定field
    • @param key
    • @param field 一个 也可以是数组
    • @return
      */
      public Long hdel(String key,String… field){
      return jedis.hdel(key,field);
      }

    /**

    • 通过field获取所有field
    • @param key
    • @return
      */
      public Set hkeys(String key){
      return jedis.hkeys(key);
      }

    /**

    • 通过key获取和key有关的value
    • @param key
    • @return
      */
      public List hvals(String key){
      return jedis.hvals(key);
      }

    /**

    • 通过key获取有关的field和value
    • @param key
    • @return
      */
      public Map<String,String> hgetall(String key){
      return jedis.hgetAll(key);
      }

    /**

    • 通过key向list头部添加字符串
    • @param key
    • @param strs
    • @return
      */
      public Long lpush(String key,String… strs){
      return jedis.lpush(key,strs);
      }

    /**

    • 通过key向list尾部添加字符串
    • @param key
    • @param strs
    • @return
      */
      public Long rpush(String key,String… strs){
      return jedis.rpush(key,strs);
      }

    /**

    • 通过key向list指定位置添加字符串
    • @param key
    • @param where LIST_POSITION 枚举类型
    • @param pivot list内的value
    • @param value
    • @return
      */
      public Long linsert(String key, BinaryClient.LIST_POSITION where,String pivot,String value){
      return jedis.linsert(key,where,pivot,value);
      }

    /**

    • 通过key设置list指定下标位置value,越界报错
    • @param key
    • @param index
    • @param value
    • @return
      */
      public String lset(String key,Long index,String value){
      return jedis.lset(key,index,value);
      }

    /**

    • 通过key删除count个与value相同的元素
    • @param key
    • @param count
    • @param value
    • @return
      */
      public Long lrem(String key,long count,String value){
      return jedis.lrem(key,count,value);
      }

    /**

    • 通过key保留下标start到end的value
    • @param key
    • @param start
    • @param end
    • @return
      */
      public String ltrim(String key,long start,long end){
      return jedis.ltrim(key,start,end);
      }

    /**

    • 通过key删除头部一个value,返回value
    • @param key
    • @return
      /
      public String lpop(String key){
      return jedis.lpop(key);
      }
      /
      *
    • 通过key删除尾部一个value,返回value
    • @param key
    • @return
      */
      public String rpop(String key){
      return jedis.rpop(key);
      }

    /**

    • 通过key删除list尾部一个value,添加到另一个list的头部,返回该value
    • list为空或不存在返回null
    • @param srckey
    • @param dstkey
    • @return
      */
      public String rpoplpush(String srckey,String dstkey){
      return jedis.rpoplpush(srckey,dstkey);
      }

    /**

    • 通过key获取list指定下标的value
    • @param key
    • @param index
    • @return
      */
      public String lindex(String key,long index){
      return jedis.lindex(key,index);
      }

    /**

    • 通过key获取list的长度
    • @param key
    • @return
      */
      public Long llen(String key){
      return jedis.llen(key);
      }

    /**

    • 通过key获取指定下标位置的value
    • 若start为0,end为-1,返回所有value
    • @param key
    • @param start
    • @param end
    • @return
      */
      public List lrange(String key,long start,long end){
      return jedis.lrange(key,start,end);
      }

    /**

    • 通过key向set添加value
    • @param key
    • @param members
    • @return
      */
      public Long sadd(String key,String… members){
      return jedis.sadd(key,members);
      }

    /**

    • 通过key删除set对应的value值
    • @param key
    • @param members
    • @return
      */
      public Long srem(String key,String… members){
      return jedis.srem(key,members);
      }

    /**

    • 通过key随机删除set一个value
    • @param key
    • @return
      */
      public String spop(String key){
      return jedis.spop(key);
      }

    /**

    • 通过key获取set中的差集
    • 以第一个为标准
    • @param keys
    • @return
      */
      public Set sdiff(String… keys){
      return jedis.sdiff(keys);
      }

    /**

    • 通过key获取set中差集并存入另一set中
    • @param dstkey
    • @param keys
    • @return
      */
      public Long sdiffstore(String dstkey,String… keys){
      return jedis.sdiffstore(dstkey,keys);
      }

    /**

    • 通过key获取set中交集
    • @param keys
    • @return
      /
      public Set sinter(String… keys){
      return jedis.sinter(keys);
      }
      /
      *
    • 通过key获取set中交集并存入另一set中
    • @param dstkey
    • @param keys
    • @return
      /
      public Long sinterstore(String dstkey,String… keys){
      return jedis.sinterstore(dstkey,keys);
      }
      /
      *
    • 通过key获取set中并集
    • @param keys
    • @return
      /
      public Set sunion(String… keys){
      return jedis.sunion(keys);
      }
      /
      *
    • 通过key获取set中并集并存入另一set中
    • @param dstkey
    • @param keys
    • @return
      */
      public Long sunionstore(String dstkey,String… keys){
      return jedis.sunionstore(dstkey,keys);
      }

    /**

    • 通过key将set中的value移除并把该value值添加到第二个set中
    • @param srckey
    • @param dstkey
    • @param member
    • @return
      */
      public Long smove(String srckey,String dstkey,String member){
      return jedis.smove(srckey,dstkey,member);
      }

    /**

    • 通过key获取set中value个数
    • @param key
    • @return
      */
      public Long scard(String key){
      return jedis.scard(key);
      }

    /**

    • 通过key判断value是否是set中元素
    • @param key
    • @param member
    • @return
      */
      public Boolean sismember(String key,String member){
      return jedis.sismember(key,member);
      }

    /**

    • 通过key随机获取set中的值
    • @param key
    • @return
      */
      public String srandmember(String key){
      return jedis.srandmember(key);
      }

    /**

    • 通过key获取set所有元素
    • @param key
    • @return
      */
      public Set smembers(String key){
      return jedis.smembers(key);
      }

    /**

    • 通过key的zset中添加value,score,其中score是用来排序的
    • 若该value已存在则根据score更新元素
    • @param key
    • @param score
    • @param member
    • @return
      */
      public Long zadd(String key,double score,String member){
      return jedis.zadd(key,score,member);
      }

    /**

    • 通过key删除在zset中指定的value
    • @param key
    • @param member
    • @return
      */
      public Long zrem(String key,String… member){
      return jedis.zrem(key,member);
      }

    /**

    • 通过key增加该value中score值
    • @param key
    • @param score
    • @param member
    • @return
      */
      public Double zincrby(String key,double score,String member){
      return jedis.zincrby(key,score,member);
      }

    /**

    • 通过key返回zset中的排名
    • 下标从小到大排序
    • @param key
    • @param member
    • @return
      */
      public Long zrank(String key,String member){
      return jedis.zrank(key,member);
      }

    /**

    • 通过key返回zset中的排名
    • 下标从大道小排序
    • @param key
    • @param member
    • @return
      /
      public Long zrevrank(String key,String member){
      return jedis.zrevrank(key,member);
      }
      /
      *
    • 通过key获取zset中start到end的value,score从大到小排序
    • start为0 end为-1返回全部
    • @param key
    • @param start
    • @return
      /
      public Set zrevrange(String key,long start,long end){
      return jedis.zrevrange(key,start,end);
      }
      /
      *
    • 通过key获取zset中指定score内的value
    • @param key
    • @param max
    • @return
      /
      public Set zrangeByScore(String key,String max,String min){
      return jedis.zrangeByScore(key,max,min);
      }
      /
      *
    • 通过key获取zset中指定score内的value
    • @param key
    • @param max
    • @return
      /
      public Set zrangeByScore(String key,double max,double min){
      return jedis.zrangeByScore(key,max,min);
      }
      /
      *
    • 通过key获取zset中指定区间内的value数量
    • @param key
    • @param max
    • @return
      /
      public Long zcount(String key,String max,String min){
      return jedis.zcount(key,max,min);
      }
      /
      *
    • 通过key获取zset中value数量
    • @param key
    • @return
      */
      public Long zcard(String key){
      return jedis.zcard(key);
      }

    /**

    • 通过key获取zset中value的score值
    • @param key
    • @param member
    • @return
      /
      public Double zscore(String key,String member){
      return jedis.zscore(key,member);
      }
      /
      *
    • 通过key删除指定区间的元素
    • @param key
    • @param start
    • @return
      /
      public Long zremrangeByRank(String key,long start,long end){
      return jedis.zremrangeByRank(key,start,end);
      }
      /
      *
    • 通过key删除指定score的元素
    • @param key
    • @param start
    • @return
      */
      public Long zremrangeByScore(String key,double start,double end){
      return jedis.zremrangeByScore(key,start,end);
      }

    /**

    • 通过key存储是什么类型
    • @param key
    • @return
      /
      public String type(String key){
      return jedis.type(key);
      }
      /
      *
    • 返回满足pattern表达式的所有key
    • keys("*") 返回所有的key
    • @param pattern
    • @return
      */
      public Set keys(String pattern){
      return jedis.keys(pattern);
      }
      }

导入maven依赖

redis.clients
jedis
2.9.0

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值