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}'

 

posted @   leagueandlegends  阅读(47)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示