用Java实现购物车功能,简单操作,让你见识真正的编程能力!

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

下面是小编整理好的一套Java资料,加小编Java编程学习群165080868,获取系统性学习Java的学习资料。

(部分资料截图)

功能实现需求分析:

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

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

商品pojo

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

Controller

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

展示购物车商品

Service

Controller

修改商品数量

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

Service

Controller

删除购物车商品

Service

Controller

购物车存在的问题

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

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

欢迎关注程序员白胖胖,可视化学习java,每天更新文章,让Java学习更加简单。

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

猜你喜欢

转载自blog.csdn.net/tanzhouxiaomanxi/article/details/89194334