Java语言中使用redis的api(V1.0)
创建jedis对象
//exp1
Jedis conn = new Jedis("localhost");
conn.select(15);
//exp2
Jedis conn = new Jedis("localhost",15);
键操作
操作
具体函数
1
清空数据
Jedis.flushDB()
2
判断某个键值是否存在
Boolean jedis.exists(String key)
3
新增键值为(key,value)
Jedis.set(String key,String value)
4
获取所有key
Set jedis.keys(“*”)
5
删除键为key的数据项
Jedis.del(String key)
6
设置键为key的过期时间为i(秒)
Jedis.expire(String key,int i)
7
设置键为key的剩余生存时间(秒)
Int Jedis.ttl(String key)
8
移除键为key属性项的生存时间限制
Jedis.persist(String key)
9
查看键为key所对应value的数据类型
Jedis.type(String key)
字符串(String)操作
操作
具体函数
1
增加/覆盖数据项
Jedis.set(String key,String value)
2
不覆盖增加数据项
jedis.setnx(String key,String value)
3
增加数据项并设置有效时间
Jedis.setex(String key,int i,String value)
4
删除键为key的数据项
Jedis.del(String key)
5
获取键为key对应的value
Jedis.get(String key)
6
在key对应value后面扩展字符串s
Jedis.append(String key,String s)
7
增加多个key对应value
Jedis.mset(String k1,String v1,…)
8
获取多个key对应value
String[] jedis.mget(String k1,String k2,..)
9
删除多个key对应数据项
Jedis.del(New String{String k1,String v1,…})
10
获取key对应value并更新value
String jedis.getSet(String key,String value)
11
获取key对应value第i到j字符
String jedis.getrange(String key,int i,String j)
整数与浮点数操作
操作
具体函数
1
增加/覆盖数据项
Jedis.set(String key,String value)
2
获取键为key对应的value
Jedis.get(String key)
3
将key对应的value自加1
Jedis.incr(String key)
4
将key对应的value自加n
Jedis.incrBy(String key,int n)
5
将key对应的value自减1
Jedis.decr(String key)
6
将key对应的value自减n
Jedis.decrBy(String key,int n)
列表(List)操作
操作
具体函数
1
添加一个List
Jedis.lpush(String key,String v1,String v2,…)
2
往key对应List左插入一个元素Vn
Jedis.lpush(String key,String Vn)
3
获取key对应List区间[i,j]的元素
Jedis.lrange(String key,int i,int j)
4
删除指定元素val个数num
Jedis.lrem(String key,int num,String val)
5
删除list区间[i,j]之外的元素
Jedis.ltrim(String key,int i,int j)
6
key对应list左出栈一个元素
Jedis.lpop(String key,int n)
7
Key对应list右插入一个元素
Jedis.rpush(String key,int n)
8
Key对应list右出栈一个元素
Jedis.rpop(String key)
9
修改key对应list指定下标index的元素
Jedis.lset(String key,int index,String val)
10
获取key对应list的长度
Jedis.llen(String key)
11
获取key对应list下标为index的元素
Jedis.index(String key,int index)
12
把key对应list里面的元素从小到大排序
Jedis.sort(String key)
集合(Set)操作
操作
具体函数
1
添加一个Set
Jedis.sadd(String key,String v1,String v2,…)
2
往key对应set的所有元素
Jedis.smember(String key)
3
删除一个值为val的元素
Jedis.srem(String key,String val)
4
删除值为v1,v2,….的元素
Jedis.srem(String key,String v1,String v2,…)
5
随机出栈set里的一个元素
Jedis.spop(String key)
6
获取set中元素的个数
Jedis.scard(String key)
7
将元素val从集合k1剪切到k2
Jedis.smove(String k1,String k2,String val)
8
获取集合k1和集合k2的交集
Jedis.sinter(String k1,String k2)
9
获取集合k1和集合k2的交集
Jedis.sunion(String k1,String k2)
10
获取集合k1和集合k2的差集
Jedis.sdiff(String k1,String k2)
哈希(Hash)操作
操作
具体函数
1
添加一个Hash
Jedis.hmset(String key,Map map)
2
往hash插入一个元素(k-V)
jedis.hset(String key,String key,String value)
3
获取Hash的所有(k-v)元素
Jedis.hgetAll(String key)
4
获取Hash的所有元素的key
Jedis.hkeys(String key)
5
获取Hash的所有元素的value
Jedis.hvals(String key)
6
把hash中k对应元素val+=i
Jedis. hincrBy(String key,String k,int i)
7
把hash中k对应元素val-=i
Jedis. hdecrBy(String key,String k,int i)
8
从hash删除一个或多个元素
Jedis. hdel(String key,String k1,String k2,…)
9
获取hash中元素各式各样
Jedis. hlen(String key
10
判断hash是否存在k1对应元素
Jedis. hexists(String key,String k1)
11
获取hash中一个或多个元素value
Jedis. hmget(String key,String k1,String k2,…)
12
获取Hash中给定key中的某个值
Jdeis.hget(String key,String elem)
有序集合(ZSet)操作
操作
具体函数
1
添加一个Zset
Jedis.zadd(String key,Map map)
2
往Zet插入一个元素(Score-Val)
jedis.hset(String key,int score,String val)
3
获取Zset里下标[i,j]区间元素val
Jedis.zrange(String key,int i,int j)
4
获取Zset里下标[i,j]区间元素(Score-Val)
Jedis.zrangeWithScore(String key,int i,int j)
5
获取Zset里面score[i,j]区间元素val
Jedis.zrangeByScore(String key,int i,int j)
6
获取Zset里面score[i,j]区间元素(Score-Val)
Jedis. zrangeByScoreWithScores(String key,int i,int j)
7
获取Zset里val为value元素的score
Jedis.zscore(String key,String value)
8
获取Zset里val为value元素的score排名
Jedis.zrank(String key,String value)
9
获取Zset里val为value的元素
Jedis.zrem(String key,String value)
10
获取Zset的元素个数
Jedis.zcard(String key)
11
获取Zset中score在[i,j]区间元素个数
Jedis.zcount(String key,int i,int j)
12
把ZSet中val为value的元素score += n
Jedis.zincrby(String key,int n,String value)
13
获取Zset里下标[i,j]区间元素val(倒序输出)
Jedis.zrevrange(String key,int start,int end)
排序操作
操作
具体函数
1
生成一个排序对象(SortingParams)
New SortingParams()
2
队列按首字母a-z排序
Jedis.sort(String key,sortingParams.alpha())
3
队列按数字升序排序
Jedis.sort(String key,sortingParams.asc())
4
队列按数字降序排序
Jedis.sort(String key,sortingParams.desc())
Jedis.Zinterstore使用方法:
ZParams params = new ZParams().aggregate(ZParams.Aggregate.MAX);
conn.zinterstore(key,params,"group:"+group,order);
对集合groups:programming和有序集合score:进行交集计算得出新的有序集合Score:programming,它包含了所有同时存在于集合groups:programming和score:的成员。因为集合groups:programming的所有成员都是的分值都被视为是1,而有序集合score:的所有成员的分值都大于1,并且这次交集计算挑选的分值为相同成员的最大分值,所以有序集合Score:programming的成员分支实际上是由score:的成员的分值来决定的。