redis-6-java客户端
·
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 前言
- 1. Java客户端
-
- 1.1 链接
- 1.2 通用命令get,set
- 1.3 exists,del
- 1.4 keys
- 1.5 expire,ttl,type
- 1.6 string命令-mget,mset,getrange,setrange
- 1.7 append,incr,decr
- 1.8 list命令-lpush,lrange,rpush
- 1.9 lpop,rpop,blpop,,llen
- 1.10 set命令-sadd,smembers,sismember,scard,spop
- 1.11 sinter,sinterstore
- 1.12 hash命令-hset,hget,hexists,hdel
- 1.13 hkeys,hvals,hmget,hmset
- 1.14 zset命令-zadd,zrange
- 1.15 zcard,zrem,zscore,zrank
- 总结
前言
1. Java客户端
java生态中,分装了resp协议,实现的redis客户端有很多,比如jedis
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>7.0.0</version>
<scope>compile</scope>
</dependency>
如果redis配置在服务器上,第一可以开放6379端口(但是不好)
我们还可以通过ssh的端口转发,把本地端口映射到linux端口上
所以访问本地的127.0.0.1:端口,就相当于访问服务器的Linux的6379了
点击服务器会话的链接属性,然后点击ssh,点击隧道,点击添加,源主机就是Windows上的8888,目标主机就是linux上的主机6379–》配置之后重新链接一下
这个隧道的生效必须是xshell上的ssh链接成功才可以
1.1 链接
JedisPool jedisPool = new JedisPool("tcp://127.0.0.1:6379");//redis连接池
try(Jedis jedis = jedisPool.getResource()){//从redis连接池中获取一个链接--》以后要记得释放放回池里面
//redis的命令就是对应jedis的方法了
String pong = jedis.ping();
System.out.println(pong);
}

1.2 通用命令get,set
jedis.flushAll();
jedis.set("key","111");
jedis.set("key2","222");
SetParams setParams = new SetParams();
setParams.ex(10);
setParams.xx();
jedis.set("key","333",setParams);
String key = jedis.get("key");
System.out.println("key:"+key);

xx就是有才生效,没有就不生效了
jedis.flushAll();
// jedis.set("key","111");
jedis.set("key2","222");
SetParams setParams = new SetParams();
setParams.ex(10);
setParams.nx();
jedis.set("key","333",setParams);
String key = jedis.get("key");
System.out.println("key:"+key);
这个就是不存在才生效

1.3 exists,del
jedis.flushAll();
jedis.set("key","111");
jedis.set("key2","222");
boolean key = jedis.exists("key");
System.out.println("key:"+key);
long key1 = jedis.del("key");
key = jedis.exists("key");
System.out.println("删除元素个数:"+key1);

jedis.flushAll();
jedis.set("key","111");
jedis.set("key2","222");
boolean key = jedis.exists("key");
System.out.println("key:"+key);
long key1 = jedis.del("key","key2","key3");
System.out.println("删除元素个数:"+key1);

1.4 keys
jedis.flushAll();
jedis.set("key","111");
jedis.set("key2","222");
jedis.set("key3","333");
Set<String> keys = jedis.keys("*");
System.out.println(keys);

1.5 expire,ttl,type
jedis.flushAll();
jedis.set("key","111");
jedis.expire("key",10);
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
long key = jedis.ttl("key");
System.out.println(key);

jedis.flushAll();
jedis.set("key","111");
String key1 = jedis.type("key");
System.out.println(key1);

1.6 string命令-mget,mset,getrange,setrange
jedis.flushAll();
jedis.mset("key","111","key2","222");
List<String> mget = jedis.mget("key", "key2");
System.out.println(mget);

mget中某个key不存在----》对应key返回null
jedis.mset("key","abvdef");
String key = jedis.getrange("key", 2, 5);
System.out.println(key);
jedis.setrange("key",2,"xyz");
key = jedis.getrange("key", 0, -1);
System.out.println(key);

1.7 append,incr,decr
jedis.flushAll();
jedis.mset("key","abvdef");
jedis.append("key","xyz");
String key = jedis.getrange("key", 0, -1);
System.out.println(key);

jedis.flushAll();
jedis.mset("key","11");
jedis.incr("key");
String key = jedis.get("key");
System.out.println(key);

jedis.flushAll();
jedis.mset("key","11");
jedis.decr("key");
String key = jedis.get("key");
System.out.println(key);

1.8 list命令-lpush,lrange,rpush
jedis.flushAll();
jedis.lpush("key","11","22","33");
List<String> key = jedis.lrange("key", 0, -1);
System.out.println(key);

jedis.flushAll();
jedis.rpush("key","11","22","33");
List<String> key = jedis.lrange("key", 0, -1);
System.out.println(key);

1.9 lpop,rpop,blpop,,llen
jedis.flushAll();
jedis.lpush("key","11","22","33");
String key1 = jedis.lpop("key");
System.out.println(key1);
List<String> key = jedis.lrange("key", 0, -1);
System.out.println(key);

jedis.flushAll();
List<String> key1 = jedis.blpop(3, "key");//返回的是一个二元组,一个是表示从哪个key删除的,第二个表示删除的是谁
System.out.println(key1);

jedis.flushAll();
List<String> key1 = jedis.blpop(100, "key");//返回的是一个二元组,一个是表示从哪个key删除的,第二个表示删除的是谁
System.out.println(key1);
我们在另一个客户端上添加
> lpush key 111
1

jedis.lpush("key","11","22","33");
long key = jedis.llen("key");
System.out.println(key);

1.10 set命令-sadd,smembers,sismember,scard,spop
jedis.flushAll();
jedis.sadd("key","111","222","333");
Set<String> key = jedis.smembers("key");
System.out.println(key);

boolean key1 = jedis.sismember("key", "111");
System.out.println(key1);

long key2 = jedis.scard("key");
System.out.println("元素个数"+key2);

jedis.sadd("key","111","222","333");
jedis.spop("key");
Set<String> key = jedis.smembers("key");
System.out.println(key);

1.11 sinter,sinterstore
jedis.flushAll();
jedis.sadd("key","111","222","333");
jedis.sadd("key2","111","222","444");
Set<String> sinter = jedis.sinter("key", "key2");
System.out.println(sinter);
long sinterstore = jedis.sinterstore("key3", "key", "key2");
System.out.println(sinterstore);
Set<String> key3 = jedis.smembers("key3");
System.out.println(key3);

1.12 hash命令-hset,hget,hexists,hdel
jedis.flushAll();
jedis.hset("key","f1","222");
Map<String,String> map = new HashMap<>();
map.put("f2","222");
map.put("f3","333");
jedis.hset("key",map);
String hget = jedis.hget("key", "h1");
System.out.println(hget);
boolean hexists = jedis.hexists("key", "f1");
System.out.println(hexists);
long del = jedis.del("key", "f1");
System.out.println(del);
hexists = jedis.hexists("key", "f1");
System.out.println(hexists);

1.13 hkeys,hvals,hmget,hmset
jedis.flushAll();
jedis.hset("key","f1","111");
jedis.hset("key","f2","222");
jedis.hset("key","f3","333");
Set<String> key = jedis.hkeys("key");
System.out.println(key);
List<String> key1 = jedis.hvals("key");
System.out.println(key1);

jedis.flushAll();
Map<String,String> map = new HashMap<>();
map.put("f1","111");
map.put("f2","222");
map.put("f3","333");
jedis.hmset("key",map);
List<String> hmget = jedis.hmget("key", "f1", "f2", "f3");
System.out.println(hmget);

1.14 zset命令-zadd,zrange
jedis.flushAll();
jedis.zadd("key",10,"zhangsan");
Map<String,Double> map = new HashMap<>();
map.put("lisi",20.0);
map.put("wangwu",30.0);
jedis.zadd("key",map);
List<String> key = jedis.zrange("key", 0, -1);
System.out.println(key);

List<Tuple> key = jedis.zrangeWithScores("key", 0, -1);
System.out.println(key);

1.15 zcard,zrem,zscore,zrank
jedis.flushAll();
jedis.zadd("key",10,"zhangsan");
Map<String,Double> map = new HashMap<>();
map.put("lisi",20.0);
map.put("wangwu",30.0);
jedis.zadd("key",map);
long len = jedis.zcard("key");
System.out.println(len);
long zrem = jedis.zrem("key", "zhangsan");
System.out.println(zrem);
List<Tuple> key = jedis.zrangeWithScores("key", 0, -1);
System.out.println(key);
Double zscore = jedis.zscore("key", "lisi");
System.out.println(zscore);
Long zrank = jedis.zrank("key", "lisi");
System.out.println(zrank);

总结
更多推荐



所有评论(0)