相关博客:https://hcshow.blog.csdn.net/article/details/118938917

原理

以客户id作为key,每位用户创建一个hash存储结构存储对应的购物车信息
将商品编号作为field,购买数量作为value进行存储
使用hash结构保存购物车信息:

  • 以用户ID作为key
  • 以商品ID作为field
  • 以商品数量作为value

购物车信息保存在Redis中,仅仅是将数据存储到redis中,并没有起到加速的作用,商品信息还需要二次查询数据库。
以hash结构保存购物车信息,key命名格式一般为:user:userId:cart

可以将每条购物车中的商品记录保存成两条field:

  • filed1专用于保存购买数量
    命名格式: 商品skuid:nums
    保存数据: 数值
  • field2专用于保存购物车中显示的信息,包含文字描述,图片地址,所属商家信息等
    命名格式: 商品skuid:info
    保存数据: json

示例:

  1. 向ID为1234的用户(cart:前缀为购物车)的购物车添加3个商品,产品的ID为1001,1002,1003,数量分别为3,2,4:
    在这里插入图片描述

  2. 获取指定用户购物车中的所有商品
    在这里插入图片描述

  3. 获取购物车中商品的总数量
    在这里插入图片描述

  4. 删除购物车里的某个商品
    在这里插入图片描述

  5. 增加或减少某个商品的数量
    在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐