244_Redis_jedis操作
【摘要】 jedis操作相关数据类型
测试相关数据类型
1 连接
//创建Jedis对象
Jedis jedis = new Jedis("127.0.0.1", 6379);
String ping = jedis.ping();
System.out.println(ping); //PONG
jedis.close();
2 string
@Test
public void demoString(){
//创建Jedis对象
Jedis jedis = new Jedis("127.0.0.1", 6379);
//set get mset mget strlen
jedis.mset("k1", "v1", "k2","v2");
System.out.println(jedis.mget("k1", "k2")); //[v1, v2]
System.out.println(jedis.strlen("k1")); //2
// incr decr incrby decrby
jedis.set("number", "1");
jedis.incr("number");
jedis.incrBy("number", 10);
System.out.println(jedis.get("number")); //12
// ttl setex
jedis.setex("k3", 10, "expire"); //expire 是value
System.out.println(jedis.ttl("k3"));
jedis.close();
}
3 list
@Test
public void DemoList(){
//创建Jedis对象
Jedis jedis = new Jedis("127.0.0.1", 6379);
// lpush 添加
jedis.lpush("list1","alex","bob","tieniu","jiefu");
// lrange llen查询
List<String> list1 = jedis.lrange("list1", 0, -1);
System.out.println(list1); //[[jiefu, tieniu, bob, alex]
System.out.println(jedis.llen("list1")); //4
//lrem key移除列表中与参数 VALUE 相等的元素
jedis.lrem("list1",1 , "jiefu");
// linsert key before/after
jedis.linsert("list1", ListPosition.BEFORE, "tieniu","jiefu2" );
System.out.println(jedis.lrange("list1", 0 , -1)); //[jiefu2, tieniu, bob, alex]
jedis.close();
}
4 hash
@Test
public void demoHash(){
//创建Jedis对象
Jedis jedis = new Jedis("127.0.0.1", 6379);
// hset hget hmset hmget
HashMap<String, String> m1 = new HashMap<>();
m1.put("name","bob");
m1.put("age" ,"40");
jedis.hmset("user2" , m1);
jedis.hset("user1", "name", "alex");
System.out.println(jedis.hget("user1", "name") + jedis.hget("user2", "name")); //alexbob
Boolean hexists = jedis.hexists("user1", "age");
System.out.println(jedis.hvals("user2"));
jedis.close();
}
5 set
@Test
public void demoSet(){
//创建Jedis对象
Jedis jedis = new Jedis("127.0.0.1", 6379);
jedis.sadd("k1", "v1", "v2", "v3");
jedis.sadd("k2", "v1", "v20", "v30");
//smembers返回集合中的所有的成员
Set<String> s1 = jedis.smembers("k1");
System.out.println(s1); //[v2, v1, v3] 体现了无序性
System.out.println(jedis.scard("k1")); //3
// sdiff sinter sunion
Set<String> sinter = jedis.sinter("k1", "k2");
Set<String> sunion = jedis.sunion("k1", "k2");
Set<String> sdiff = jedis.sdiff("k1", "k2");
System.out.println(sinter); //[v1]
System.out.println(sunion); //[v1, v2, v30, v3, v20]
System.out.println(sdiff); //[v2, v3]
// 移除
jedis.srem("k1", "v3");
System.out.println(jedis.scard("k1")); //2
jedis.close();
}
6 zset
@Test
public void demoZset(){
//创建Jedis对象
Jedis jedis = new Jedis("127.0.0.1", 6379);
jedis.zadd("top" ,35, "alex");
jedis.zadd("top" ,40, "bob");
jedis.zadd("top" ,33, "jiefu");
jedis.zadd("top" ,30, "niuniu");
Set<String> top = jedis.zrange("top", 0, -1);
Set<Tuple> top1 = jedis.zrangeWithScores("top", 0, -1);
Set<Tuple> top2 = jedis.zrevrangeWithScores("top", 0, -1);
System.out.println(top); //[niuniu, jiefu, alex, bob]
System.out.println(top1); //[[niuniu,30.0], [jiefu,33.0], [alex,35.0], [bob,40.0]]
System.out.println(top2); //[[bob,40.0], [alex,35.0], [jiefu,33.0], [niuniu,30.0]]
jedis.close();
}
maven 配置
<dependencies>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>3.2.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>compile</scope>
</dependency>
</dependencies>
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)