第六章 Redis常用五大数据类型之Hash
目录
一、介绍
Redis中的Hash是一个键值对集合,是String类型的field和value的映射表,特别适合存储对象,类似于Java中的Map<String, Object>。使用过程中的案例,将用户ID设定为key,存储的value为用户对象(Java Bean)的姓名、年龄、生日等信息。
Hash类型对应的数据结构是两种,ziplist(压缩列表)和hashtable(哈希表),当filed-value长度较短且个数较少时,使用ziplist,否则使用hashtable。
二、常用命令
更详细的Redis命令操作指南,请查看Redis官网,有关命令的入口地址如下:
最好的学习方式就是阅读官方文档及源代码
2.1. hset
hset <key><field><value>给<key>集合中的<field>键赋值<value> ,可同时设置多个
<field>和<value>,相当于hmset的功能
2.2. hget
hget <key><field><value>给<key>集合的<field>取出<value>
2.3. hmset
hmset <key><field1><value1><field2><value2>...批量设置hash的值
Redis4.0版本以后该方法被弃用
2.4. hexists
hexists <key><field>查看哈希表key中,给定域field是否存在,1存在/0不存在
2.5. hkeys
hkeys <key>列出该hash集合的所有<filed>
2.6. hvals
hvals <key>列出该hash集合的所有<value>
2.7. hgetall
hgetall <key>获取一个hash类型的key中的所有的field和value
2.8. hincrby
hincrby <key><field><increment>为哈希表key中的域的值加上增量
2.9. hsetnx
hsetnx <key><field><value>将哈希表key的域field的值设置为value,当且仅当域filed不存在,0失败/1成功
三、应用场景
3.1. 电商购物车
以用户id位key,商品id位field,商品数量为value
购物车的操作:
1. 添加商品 hset cart:1001 10088 1
2. 增加数量 hincrby cart:1001 10088 1
3. 商品总数 hlen cart:1001
4. 删除商品 hdel cart:1001 10088
5. 获取购物车所有商品 hgetall cart:1001
原文地址:https://blog.csdn.net/qushaming/article/details/142642904
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!