redis-jedis笔记整理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
启动Redis服务器
启动客户端
Redis命令目录key(建)
保存键值对set key value
查询指定键对象get key
删除给定键的对象del key1key2…
设置键过期时间EXPIRE key exptime
剩余时间ttl key
查看搜索有键值keys键
migrate指令(移动将数据移动另外一个数据)
将key原子性地从当前实例传送到目标实例的指定数据库上,一旦传送成功,key保证会出现在目标实例上,而当前实例上的key会被删除。
MOVE key db
将数据库的key移动到指定的数据库db当中。如果当前数据库(源数据库)和给定数据库(目标数据库)有相同的名字的给定key,或者key不存在于当前数据库,那么MOVE没有任何效果。因此,也可以利用这一特性,将MOVE当作锁(locking)原语(primitive)。
Obejct{refcount|encoding|idletime}
通常用在debug或者了解为了节省空间使用特殊的编码情况,当redis用作缓存时候,也可以通过OBJECT命令中的信息,决定key的驱逐策略.
object refcount key:返回给定key引用所存储的值的次数.
object encoding key:返回给定key所存储的值编码可以有
raw(一般字符串)或int(用字符串表示64位数字是为了节约空间)。
ziplist或linkedlist。ziplist是为节约大小较小的列表空间而作的特殊表示。
intset或者hashtable。intset是只储存数字的小集合的特殊表示。
zipmap或者hashtable。zipmap是小哈希表的特殊表示。
ziplist或者skiplist格式。ziplist用于表示小的有序集合,而skiplist则用于表
示任何大小的有序集合。
object idletime key:返回给定key自存储的空闲时间
persist key
将key从带生存时间转换为持久的不带生存时间.
pexpire设置key的过期时间单位为毫秒
pexpireat设置过期时间戳
randomkey随机产生一个key
rename oldkey newkey修改key的名字,如果存在则覆盖,不存在则不修改
renamenx修改key的名字,如果名字存在就不修改
restore key ttl反序列化值
JavaAPI调用Redis
下载commons-pool2-2.2.jar该包是jedis依赖的第三方包.并且从网上下载到jedis客户端源码具体下载地址为https:///xetorthio/jedis该种连接方式同时也是redis官方比较推荐的一种连接方式,下载到jedis源码,并且编译打包成jar文件目前版本最高支持到redis到2.8.5.
jedis源码下载页面
redis提供了大量的指令集.具体指令可以参考http://redis.io/commands网址。jedis作为连接redis的客户端软件,底层实际上是通过ServerSocket连接redis服务器继而实现用户和redis 内存数据库的交互。由于redis目前官网提供的最新版本是2.8.x版本.但是注意的是目前已不再对XP系统32位提供支持,如需要需要自己编译使用.
使用Jedis连接redis数据库,实施起来没有事先想象的那么难入手,事实上使用jedis提供的API访问redis数据库还是比较轻松.创建Jedis对象,该对象用来连接Redis内存数据库.Jedis jedis=new Jedis(ip,port),ip指的是redis内存数据库所在内存数据库所在的主机ip地
址,port指的是redis呢哦存数据库服务的端口号,默认是6379.Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sortedset--有序集合)和hash(哈希类型)。以下是针对jedis对redis内存数据库访问的数据类型做为学习和使用的路线介绍.Redis数据库,默认的可以讲数据库的库表分成0~15个子库,每个库之间独立.使用move指令实现多个子库之间数据的迁移。默认使用0号子库。如果用户有特殊需求可以使用select指令在执行其他指定之前选着相应的子库。例如jedis.select(0)就表示用户的操作是在0号子库下完成.
一、String操作
(1)保存字符串key-value类型数据.默认保存的数据会永久的保存在磁盘上,数据不会丢失.
(2)保存数据key-value指定过期时间数据,过期时间是以秒为单位.
(3)保存数据如果存在新的数据就不会覆盖.
(4)在字符串自定位置覆盖
(5)字符串追加Append
(6)一次添加多个key-value,键值必须成对出现
(7)一次添加多个key-value,键值必须成对出现,要求如果存在就取消此次插入操作.
(8)获取单个key的值
(9)批量获取key-value
(9)删除键值对
(10)判断键是否存在
(11)清空指定DB子库该操作需要谨慎使用
(12)清除所有子库
二、List操作
(1)往list插入值
(2)修改List指定位置的值
(3)获取List集合里面的值
(4)删除集合元素
(5)删除集合
(6)获取指定下标数据
(7)在指定数据项之前/后插入数据