公众号:零零后程序员小三 |
哈喽大家好呀!我是小三。我又来更文啦。
今天要写的是Redis常见数据结构整理,还有一些常用指令整理。下面就开始吧。
什么是数据结构?
有Java基础的应该知道常用的一些数据结构,比如数组、队列、栈等等... 那Redis的数据结构跟Java的数据结构有什么区别吗?答案是有的,如果一些小伙伴了解的Map的话就知道Map中有一个Key值和一个Value值,Redis的数据结构也是这样的。Redis的数据结构:String、List、Hash、Set的话都是有一个Key值和一个Value值。Key值是名字,Value值就是数据。这两个是绑定在一起的,一个Key值对应一个Value值,我们称之这样的为键值对。
Redis常用的基本命令
在Redis中,在不同的场景下会使用不同的命令。但是不是每个命令都需要记住呢?不是的,只需要熟悉最常用的命令就好了,在需要使用一些少用的命令可以去官方文档查阅即可。下面来介绍Redis中一些常用的命令。
1.# exists(判断key值是否存在):如果存在返回1,反之返回0
例子: exists name(name为key)
2.# del(删除key): 删除成功返回1,反之返回0
3.# type(判断key的类型)
4.ttl(查看key存活时间
想学习更多命令可以自行到中文文档进行查询:redis中文官方网站
String类型的介绍与使用场景
String字符串类型是Redis中最基本的数据类型,在Redis中的应用场景很广,一个key对应一个value。
Redis的String是动态字符串,可修改的字符串,它的内部结构类似于Java的ArrayList,采用预分配冗余空间的方式来减少内存的分配。
String类型是二进制安全的,意思就是Redis的String可以包含任何的数据。如:数字,字符串,图片等
String类型的应用场景:验证码、计数器、订单重复提交、用户登录信息、商品详情的实现
String的常用命令
1.# set/get 设置和获取key-value 注意中间一定要加空格
例子: set xxx(key) xxx(value)
get xxx(key)
2.# mget/mset 批量设置或获取多个key的值
mset user:name jack user:age 2
mget user:name user:age
3.# incr incr对key对应的值进行加1操作,并返回新的值
incr video:uv:1
4. # incrby 将key对应的数字加incremen