当前位置:首页 > 基于JSP的网上书店
毕业设计(论文)
6.4.3 购买图书具体实现
当在首页点击购买时,会调用名为/client/BuyServlet的servlet,该对象首先获取图书的id,然后调用BusinessServiceIml中的findBook方法,该方法将调用BookDaoImpl类中的find方法,该方法提供了对数据库的操作,并根据图书id从图书表book中查找图书的所有信息。定义购物车类Cart的对象为cart,该对象调用类Cart中的add()方法。购物车类Cart用LinkedHashMap来存储图书条目。LinkedHashMap 是HashMap的一个子类,保存了记录的插入顺序。在add()方法中判断购物车中是否有该图书的id号,如果购物车里没有该图书,购买时设定图书的数量为1,如果有该图书,图书数量加1。当用户想继续购买图书时,可以点击继续购物的图片,这样就会回到首页,用户想买哪本书只要点击购买,该书就会加入购物车。
6.5 查看购物车
6.5.1 查看购物车流程图
开始 查看购物车 购物车图书信息 是 删除 否 否 清空 是 删除图书信息 清空购物车 结束
图6-7 查看购物车流程图
6.5.2 查看购物车具体实现
24
毕业设计(论文)
点击查看购物车会进入listcart.jsp页面,在该购物车页面显示选中图书的信息,包括书名、售价、数量、小计等信息。使用了
用户点击删除图书时,程序会请求DeleteBookServlet类,在该类中使用购物车类的对象cart调用Cart类中的deleteBook()方法实现删除图书的功能。
当用户点击清空购物车时,程序请求ClearBookServlet类,在该类中使用购物车类的对象cart调用Cart类中的clear()方法实现删除图书的功能。
6.6 生成订单
6.6.1 生成订单流程图
开始 购物车 未注册 已注册 注册 生成订单 结束
图6-8 生成订单流程图
6.6.2 生成订单具体实现
当用户想提交订单时,只需点击生成订单图片,不过必须得先登录,如果用户没有登
25
毕业设计(论文)
录就会显示提示信息:对不起,您尚未登录!如果您尚未注册,请先注册后登录!谢谢合作!用户将图书加入了购物车,如果不想买这本书了,可以点击X,这样该书就会从购物车中删除。如果想清空购物车,只要点击清空购物车的图片,购物车中的图书就会被全部删除,这样用户就不用一本书一本书的删除了,使用户的操作更方便。
点击生成订单,调用的servlet为/client/OrderServlet,方式为order。在该servlet中首先判断用户是否登录。如果没有登录就会转到sorry.jsp页面。定义购物车类Cart的对象为cart,调用BusinessServiceImpl中的saveOrder()方法,定义订单类Order的对象order,用购物车中的购物项生成订单项。调用OrderDaoImpl中的add方法,将订单的id、订单时间、状态、价格、用户id插入orders表。
6.7 查看订单
6.7.1 查看订单类图
图6-9 查看订单类图
6.7.2 查看订单具体实现
26
毕业设计(论文)
在标题栏点击查看自己的订单,调用的servlet的名称为/client/OrderServlet,方式为list。当method为list时,使用用户的对象user调用getId()方法获取用户的id,调用BusinessServiceImpl中的findUserOrder(),该方法又调用OrderDaoImpl中的findOrderByUid()方法。该方法先连接数据库,然后从orders表中通过用户id查询订单的所有信息。
在WebRoot下的client下新建userorder.jsp,用于显示用户的订单明细和收货人详 细地址,订单明细包括书名、售价、数量、应收货款以及总计应收货款,收货人详细地址 包括用户名、电话、手机、地址和邮箱。使用
6.8 查看图书分类
6.8.1 查看图书分类流程图
开始 书籍列表 分类图书 是 购买 否 加入购物车 结束
图6-10 查看图书分类流程图
6.8.2 查看图书分类类图
27
共分享92篇相关文档