思路:判断登录和不登录情况下的购物车该如何处理
购物车是一个独立的工程搭建
1.搭建购物车的工程
2.不登录的时候创建购物车,此时购物车的数据放在哪里?
放到cookie中,关闭浏览器后,购物车还在,通过设置cookie的有效期实现(默认是关闭浏览器失效)
主要实现:添加购物车的列表,删除,结算
3.点击加入购物车 传递两个参数:商品id ,添加商品的数量
4业务逻辑:
先从cookie中取出购物车,如果之前有购物车商品,就把要添加的商品加入到购物车列表里面去。如果有相同的商品,就数量加一。
如果没有购物车,根据商品id查询商品信息,把商品添加到购物车,把购物车商品列表写入到cookie。
在cartweb中处理 cookie
把从cookie中去购物车列表操作提取到private方法中 在添加和展示商品的时候都需要调用
cookie中有汉字信息在接收和返回时需要转码
判断取出的cookie是否为空,如果为空返回一个 new arraylist<>.这样不会出现空指针异常