通过jedis对redis客户端的一些基本操作
通过jedis对redis客户端的一些基本操作
引言:
redis的存储方式是基于键值对的存储的。
所以set(key,value)和get(key)是最经常用的,这里只是记录一下对redis客户端的基本操作。
redis有16个库,编号是从0-15,默认是对0号库进行读写操作。
1、首先建立一个redis连接池
2、基本操作
(1)set(key,value)
Jedis jedis = RedisConnectPool.getConnection();jedis.set("testKey","设置数据");
说明:
RedisConnectPool是redis连接池工具类,在第一步的笔记地址里有。
查看redis可视化工具:
可以看见,已经把这个key-value写到redis的0号库了。
(2)append(key,value)
jedis.append("testKey"," 通过append方法将值追加到之前的值后面");
查看redis可视化工具:
(3)get(key,value)
System.out.println(jedis.get("testKey"));
控制台输出:
(4)exists(key)
System.out.println(jedis.exists("testKey"));
说明:
判断redis里是否有该字符串为key的键值对,有返回true,没有返回false
控制台输出:
(5)exists(...keys)
System.out.println(jedis.exists("testKey","aaa","bbb"));
说明:
判断redis里是否有这几个字符串为key的键值对,有一个符合则返回1,2个就返回2,依次类推......
注意,并非返回boolean值
控制台输出:
(6)move(key,dbindex)
jedis.move("testKey",1);
说明:
将testkey这个键值对移动到redis 的 1号库。
查看redis可视化工具:
这个时候,我们在0号库再建立一个key为testkey的键值对
然后再将这个testKey移动到1号库,看看是什么结果?
可以看见,如果目标库,存在该key的话,那么并不会移动过去。
(7)修改当前操作库
引言中有提到,默认是修改redis的0号库,那怎么才能切换分库呢?
答:在创建redis连接池的时候,多加一个参数。
如图所示:
这时候,增加一个键值对
jedis.set("whichDB","我在哪个库下呢?是2号库吗?");
查看redis可视化工具:
(8)其它
方法 | 说明 |
---|---|
keys("*") | 得到该库下的所有key |
del(key) | 删除该key的键值对 |
mset(key1,value1,key2,value2,...) | 增加多个键值对 |
mget(key1,key2,... | 得到多个键值对的值 |
setnx(key,value) | 增减键值对,若该键值对的key已存在,那么不进行任何操作,不会覆盖 |
expire(key,time) | 设置键值对的过期时间,单位是s |
ttl(key) | 获取键值对的还有多久过期 |
setex(key,time,value) | 创建该key,并且设置过期时间 |