Java中操作Redis--Jedis使用

2021-10-08 15:09:00 浏览数 (1)

使用Lists:

代码语言:javascript复制
jedis.lpush("userList", "James");  
jedis.rpop("userList");   //可以使用列表模拟队列(queue)、堆栈(stack),并且支持双向的操作(L或者R)。
List<String> userList = jedis.lrange("userList", 0, -1);  //第0个到最后一个
jedis.del("userList");  
jedis.lset("userList", 1, "Nick Xu");  //设置位置1处为新值
Long size = jedis.llen("userList");  //返回长度
jedis.ltrim("userList", 1, 2);  //进行裁剪,只要第1和2个数据

使用Sets:和列表不同,集合中的元素是无序的,因此元素也不能重复。

代码语言:javascript复制
jedis.sadd("fruit", "apple");  
jedis.sadd("fruit", "pear", "watermelon");  //添加到set,可一次添加多个,即这一种

Set<String> fruit = jedis.smembers("fruit");  //遍历集合
jedis.srem("fruit", "pear");     //移除元素:remove
Long size = jedis.scard("fruit");  //返回长度
Boolean isMember = jedis.sismember("fruit", "pear");  //是否包含

jedis.sadd("food", "bread", "milk");   
Set<String> fruitFood = jedis.sunion("fruit", "food");  //集合的操作:包括集合的交运算(sinter)、差集(sdiff)、并集(sunion)

使用Sorted Sets:有序集合在集合的基础上,增加了一个用于排序的参数。

代码语言:javascript复制
jedis.zadd("user", 22, "James");  //有序集合:根据“第二个参数”进行排序。
jedis.zadd("user", 24, "James");   // 再次添加:元素相同时,更新为当前的权重。
Set<String> user = jedis.zrange("user", 0, -1);  // zset的范围:找到从0到-1的所有元素。

使用Hashes:

可以使用HashMap存放数据

代码语言:javascript复制
Map<String, String>  capital = new HashMap<String, String>();  
capital.put("shanxi", "xi'an");  
...  
jedis.hmset("capital", capital);  
List<String> cities = jedis.hmget("capital", "shannxi", "shanghai");  

0 人点赞