Redis-------String类型常用命令
String类型的常见命令
String的常用命令有:
命令 | 描述 |
set <key> <value> | 设置键值对,成功返回1,失败返回0,key值已经存在则覆盖原值 |
get <key> | 根据key返回对应的value |
setnx <key> <value> | 只有key 不存在时,设置key的值,key值存在则无法设置 |
append <key> <value> | 给指定的key后面追加<value> 并返回总长度 |
strlen <key> | 获取key对应的value的长度 |
incr <key> | 将key中储存则数字值增1,只能对数字值操作,如果为空,新值为1 |
decr <key> | 将key中储存的数字值减1 |
incrby/decrby <key> <步长> | 将key中储存的数字值增减。自定义步长 |
mset <key><value>.. | 可以同时设置多组键值对 |
mget <key>... | 可以同时一个或多个key的value值 |
msetnx <key1> <value1> <key2><value2>.... | 同时设置多组键值对 |
mget <k1> <k2> ... | 可以获取1个或多个键值对 |
msetnx <key1> <value1> <key2> <value2>.... | 同时设置多组键值对,具有原子性 |
getrange <key> <起始位置> <结束位置> | 获取值的范围,类似java中的subString,前包,后包,下标从0开始 |
setrange <key> <起始位置> <value> | 用value 覆写key中所储存的字符串的值,从起始位置索引覆写 |
setex <key> <过期时间> <value> | 设置键值对的同时,设置过期时间,单位秒 |
用法举例
Key的结构
Redis的key允许多个单词形成层级结构,多个单词之间用":"隔开,格式如下:
项目名:业务名:类型:id
这个格式并非固定,也可以根据自己的需求来删除或添加词条
例如我们的项目名称叫heima,有user和product两种不同类型的数据,我们可以这样定义key:
- user相关的key:heima:user:1
- product相关的key:heima:product:1
如果Value是一个java对象,例如一个User对象,则可以将对象序列化为JSON字符串后存储:
KEY | VALUE |
heima:user:1 | {"id":1,"name":"Jack","age":21} |
heima:product:1 | {"id":1,"name":"xiaomi11","price":4999} |
1 2 3 | set heima:user: 1 '{"id":1,"name":"Jack","age":21}' set heima:user: 2 '{"id":2,"name":"Rose","age":18}' set heima:product: 1 '{"id":1,"name":"xiaomi11","price":4999}' |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)