标签:set String redis members cluster key Test println
继上一篇使用jedis连接redis-cluster进行zset数据结构api演示
之后的第五章节。本章内容讲解使用jedis连接redis-cluster进行set数据结构api演示。
package com.coderman.jedis.clusterdemo;
import com.alibaba.fastjson.JSON;
import org.junit.Test;
import java.util.Set;
/**
* @Author fanchunshuai
* @Date 2020/1/3 18
* @Description:
* set api测试
*/
public class SetAPITest extends ClusterTest{
/**
* 重复运行两遍
* 添加集合元素
*/
@Test
public void testAddSet(){
//用户1认识的朋友
String key = "user:1:friends";
String [] members = new String[10];
members[0]= "zhangsna";
members[1]= "lisi";
for (int i = 2;i < 10;i++){
members[ i ]= "wangwu"+i;
}
Long res = cluster.sadd(key,members);
//第一次运行返回10,第二次运行没有插入元素返回0
System.out.println("res = "+res);
}
/**
* 获取所有集合
*/
@Test
public void testSearhSet(){
String key = "user:1:friends";
Set<String> set = cluster.smembers(key);
System.out.println(JSON.toJSONString(set));
}
/**
* 获取集合元素大小
*/
@Test
public void testGetSsize(){
String key = "user:1:friends";
Long size = cluster.scard(key);
System.out.println("size = "+size);
}
/**
* 判断某元素是否在集合中
*/
@Test
public void testIsInSet(){
String key = "user:1:friends";
boolean b = cluster.sismember(key,"zhangsanfeng");
System.out.println("b = " + b);
}
/**
* redis差集运算
* No way to dispatch this command to Redis Cluster because keys have different slots
*/
@Test
public void testSetDiff(){
String key1 = "user:1:friends";
//用户1认识的朋友
String key2 = "user:2:friends";
String [] members = new String[2];
members[0]= "zhangsna";
members[1]= "lisi";
cluster.sadd(key2,members);
Set<String> dif1Set = cluster.sdiff(new String[]{key1,key2});
System.out.println("dif1Set = "+JSON.toJSONString(dif1Set));
Set<String> dif2Set = cluster.sdiff(new String[]{key2,key1});
System.out.println("dif2Set = "+JSON.toJSONString(dif2Set));
}
}
程序男
发布了152 篇原创文章 · 获赞 65 · 访问量 34万+
私信
关注
标签:set,String,redis,members,cluster,key,Test,println 来源: https://blog.csdn.net/u010504064/article/details/103975841
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。