java cookie 只能获取一部分_用Java实现购物车功能,简单操作,让你见识真正的编程能力!...

在21世纪的互联网时代,网络的高速发展导致网上购物的快速兴起,越来越多的人爱上了网上购物,现在已经成为了我们生活中必不可少的一部分,当我们在网上商城浏览商品时,会把自己喜爱的商品加入购物车,那么这么购物车功能是如何实现的呢?小编就来带领大家一步步实现这个功能吧!

0338deb540b3097c34bf69eef9eccb9b.png

功能实现需求分析:

1、在用户不登陆的清空下也可以使用购物车,那么就需要把购物车信息放入cookie中。

小编整理了一份java学习资料,私信回复【01】,获取源码。

b84d7a6a9ff461efaafca17cedee2dc5.png

2、可以把商品信息,存放到pojo中,然后序列化成json存入cookie中。

3、取商品信息可以从cookie中把json数据取出来,然后转换成java对象即可。

4、此功能只需要操作cookie不需要数据库的支持,所以只需要在taotao-portal中实现即可。

5、购物车包括四种动作(添加商品、修改商品数量、删除购物车中的商品、展示购物车商品列表)

添加购物车商品

在商品详情页面点击“加入购物车”按钮提交一个请求吧商品id传递给Controller,Controller接收id,Controller调用Service根据商品id查询商品基本信息。把商品写入cookie中,加入cookie之前先从cookie中把购物车的商品取出来判断当前购物车商品列表中是否有此商品,如果有数量加一,如果没有添加一个商品,数量为1。展示给用户购物车列表。

service功能:接收一个商品id,数量(默认为1),根据商品id查询商品信息。调用taotao-rest的服务。把商品添加到购物车,先把购物车商品列表取出来,判断列表中是否有此商品,如果有就增加数量就可以了。如果没有把此商品添加到商品列表。返回添加成功Taotaoresult。

功能:

1、接收controller传递过来的商品id,根据商品id查询商品信息。

2、从cookie中取出购物车信息,转换成商品pojo列表。

3、把商品信息添加到商品列表中。

参数:

1、商品id

2、Request

3、response

返回值:

TaoTaoResult

b0dd46af5d7abd3eec34a5ce0577d6f1.png
82e58b06fe5a27436e4c7770972eb0c5.png

商品pojo

商品pojo需要使用taotao-portal中的Item。此pojo在反序列化时会抛异常。需要做如下修改:

b48cca435edd0ca2ecab2cb3095fd341.png

Controller

9a3fba3a834ebd8469d448ff996cfbd3.png

用户点击“我的购物车”展示购物车信息

展示购物车商品

Service

fca66876854e6c2f4b303c2cb4fcdf74.png

Controller

5670c2ebb7c951645326921006826a93.png

修改商品数量

当点击购物车商品的“+”、“-”号时增加或减少商品数量。减少商品数量时,如果数量为“1”则不继续减少。

Service

b971c0506a1d1995fc660241267dfef0.png

Controller

9b46bee9dc31707b2da20470ae2eb7c2.png

删除购物车商品

Service

ce596a9ea12612daa20527f1f0a41f19.png

Controller

1e7f8c9ef0bebb1e8866660c78a8c569.png

购物车存在的问题

1、更换设备购物车商品不能同步(不能把购物车商品保存到数据库、要求用户登录才能同步信息、可以把购物车信息保存到redis中,key就是用户,value就是购物车列表、购物车商品合并的问题)

2、提交订单后购物车商品需要清空。

声明:本文内容来源于网络,如有侵权请联系删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值