为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

网上购书系统

2017-09-27 50页 doc 423KB 28阅读

用户头像

is_654168

暂无简介

举报
网上购书系统网上购书系统 湛江师范学院 毕业设计论文 题目:网上购书系统 二级学院 商学院 专 业 电子商务 年 级 2008级 学生姓名 陈月珠 学 号 2008334101 指导教师 管丽娟 完稿时间 2012.4.29 网上购书系统 网上购书系统 摘要 控制在300字左右,只需一段话 摘要:本网上购书系统是一个基于Internet,采用了B2C(Business to Consumers)模式,并根据现有的网上购物系统的现状而设计开发的电子商务平台。它不但可以扩大商家的规模和市场影响力,而且可以 减少企业...
网上购书系统
网上购书系统 湛江师范学院 毕业 题目:网上购书系统 二级学院 商学院 专 业 电子商务 年 级 2008级 学生姓名 陈月珠 学 号 2008334101 指导教师 管丽娟 完稿时间 2012.4.29 网上购书系统 网上购书系统 摘要 控制在300字左右,只需一段话 摘要:本网上购书系统是一个基于Internet,采用了B2C(Business to Consumers)模式,并根据现有的网上购物系统的现状而设计开发的电子商务平台。它不但可以扩大商家的规模和市场影响力,而且可以 减少企业的经营成本,提高工作效率。 本文首先介绍了网上购书系统的开发背景,然后论述网上购书系统的现状和发展,较详细地论述了系统的分析,设计和实现。 本系统主要为用户提供了注册和登录,查看书籍,购物车管理,确认购买书籍信息管理,生成订单管理; 为管理员提供了书籍管理,修改书籍管理,订单管理等。 在设计方面,本系统采用B/S三层 结构,主要应用了JSP技术和Servlet技术进行动态页面的设计,从系统的安全性和代码的可重用性方面考虑,后台数据库选用了Mysql数据库。 关键词 购书系统、B/S三层结构(删掉)、JSP、Servlet、Mysql II 网上购书系统 目录 1( 网上购书系统绪论 ............................................... 3 1.1 系统开发背景 .................................................................................................................................................. 3 1.1.1网上书店系统发展 ................................................................................................................................ 3 1.1.2网上书店系统发展现状 ........................................................................................................................ 3 1.1.3网上书店的优越性 ................................................................................................................................ 4 1.2 系统实现的目标 .............................................................................................................................................. 4 2. 网上购书系统分析 ................................................ 4 2.1系统设计目标 ................................................................................................................................................... 4 2.2系统的可行性分析 ........................................................................................................................................... 4 2.3系统设计的特点 ............................................................................................................................................... 5 2.4系统的功能需求分析 ....................................................................................................................................... 5 2.5系统设计的总体规则 ....................................................................................................................................... 6 3(系统主要架构及开发技术 .......................................... 6 3.1基于B/S的体系结构 ...................................................................................................................................... 6 3.2开发技术的选择 .............................................................................................................................................. 7 4(系统设计 ........................................................ 7 4.1系统功能模块设计 ........................................................................................................................................... 7 4.1.1前台功能和后台功能模块 .................................................................................................................... 7 4.1.2注册功能流程 ........................................................................................................................................ 9 4.1.3用户登录流程 ...................................................................................................................................... 10 4.1.4书籍查看流程 ...................................................................................................................................... 11 4.1.5购物车流程 .......................................................................................................................................... 11 4.1.6书籍管理流程 ...................................................................................................................................... 12 5(系统功能的具体实现 ............................................. 13 5.1系统数据库表的基本设计 ............................................................................................................................. 14 5.1.1 E-R图 ................................................................................................................................................... 15 5.1.2所用表 .................................................................................................................................................. 17 5.2 功能总体 ................................................................................................................................................ 19 5.2.1功能页面结构 ...................................................................................................................................... 19 5.2.2主要功能流程图: .............................................................................................................................. 19 5.3各功能模块的实现 ......................................................................................................................................... 20 5.3.1登录和注册功能模块 .......................................................................................................................... 20 5.3.2查看书籍模块 ...................................................................................................................................... 23 5.3.3查看书籍详情信息模块 ...................................................................................................................... 25 5.3.4购物车功能模块 .................................................................................................................................. 26 1 网上购书系统 5.3.5确认信息模块 ...................................................................................................................................... 30 5.3.6生成订单模块 ...................................................................................................................................... 33 5.3.7 后台管理模块 ..................................................................................................................................... 34 5.3.8书籍管理功能模块的图片如下:....................................................................................................... 36 5.3.9订单管理功能模块 .............................................................................................................................. 42 6(开发平台与开发工具 ............................................. 43 6.1网上购书系统的开发软件 ............................................................................................................................. 44 6.6.1 Dreamweaver ........................................................................................................................................ 44 1.6.2 Mysql .................................................................................................................................................... 45 总结与展望 ........................................................ 45 参考文献 .......................................................... 46 致 谢 ............................................................ 46 目录格式需设置 2 网上购书系统 1( 网上购书系统绪论 1.1 系统开发背景 1.1.1网上书店系统发展 第一章 需另起一页,且在正面开始打印;其余各章需另起一面 Internet的迅速发展正以前所未有的深度和广度影响和改善着人类生活的各个方面,越来越多的人开始意识到Internet 所蕴含的经济价值的无穷商机,并积极投身于电子商务活动。实际上,电子商务是一些商业行为的电子化,例如网上书店,网上贸易,就网上书店来说,网上书店是目前应用最广,最成功的典范之一,网上书店的崛起对传统的图书流通体系产生了强烈的冲击,有效地缩短了图书流通发行环节,将扩大读者,图书,出版者,发行者紧密地结合在一起,大大提高了图书流通率。 1.1.2网上书店系统发展现状 西方国家网上书店概况:世界上第一家网上书店是1991年在美国联机公司AOL采购网络上建立的“阅读美国书店”,目前最负胜名的是美国西雅图亚马孙图书公司的亚马孙网上书店。它创建于1995年,供书品达310余万种年,顾客达500万人次,其价格优惠20-50%。金融结算制度完善,配送服务高效。实现了零库存运转。英国网上书店较著名的有Internet书店,德国的网上书店主要有图书在线网上书店。 注明出处 国内网上书店的概况:自从亚马孙网上书店成功后,中国的网上书店也建立起来。中国最早的网上书店是1997年在杭州新华书店诞生的,在经过年余的艰苦经营,接待了400多位访问者后,悄然引退,而进入1998年后,作为中国书业传统经营力量的新华书店,正式宣布进入网络领域,先试第九届全国书市首次开通书店网站,后来在1998年12月30日上海书城成为国内首家正规的网上书店,读者在家中可以上网完成浏览,选购,付款的全过程。1999年是网上书店迅速发展的一年,商业公司不断进入网上书店有超过几百家,有自己网站的公司有40多家,这个数目还不断增加。注明出处 1.1.3网上书店的优越性 网上书店在价格,时效性,品种,查询方式等方面都有优势。网上书店是一种直销方式,在到书速度和价格上都有优势,网上书店的书目数据是任何订购书目是无法比拟的,网上书店 3 网上购书系统 的数目除书名,著者,价格等信息外,还有封面,内容简介,目次,评论等详细信息。同时网上书店的目录查询功能也是传统的按某种分类规则编排的图书征订目录无法比拟的,(改用实体书店)其以关键词或主题从网上检索某类文献,查准率与查全率都有一定的保障。另外还有一些书更是以网站包销或总代理的形式进行销售,这就意味着一种全新的电子商务模式的开始。 1.2 系统实现的目标(本论文的主要任务) 现在流行的网上购书系统不仅要有漂亮的网页,更有严谨的规划,注重每一个细节的环节。这样才能使得电子交易时避免不必要错误发生,我使用HTML、JSP等技术来编辑网页,并运用JDBC技术把数据库和动态网页相关联。传统的管理信息系统信息获取方法是由专业文字录入人员将信息输入到管理系统的数据库中,这种方法在数据量不大时有很多的应用场合。当数据量比较大,并且有较强的专业性,录入的费用和出错的可能性都相应上升。本设计在实际应用中的解决方案是建立网站,以及自己的数据库,使得所需商品信息可以及时的保存、更新,可以更好的及时了解书籍的买卖情况。(修改,移到第二章 2.1) 2. 网上购书系统分析 2.1系统设计目标 本购书系统由于需要演示程序,故为了演示方便,采用JSP/Servlet+Mysql+tomcat的架构实现,此系统分为前后台管理和后台管理。前台管理是友好的操作界面,供用户浏览,查询使用。包括浏览书籍、查询书籍、订购书籍。购物车等功能;后台管理是提供管理员的,其中包括:书籍管理、用户管理、使管理员从繁琐的手工操作中解脱出来,并提高了办公效率。(修改,移到1.2中) 2.2系统的可行性分析 系统可行性分析的目的就是要用最小的代价在尽可能短的时间内确定问题是否能够解决,系统方案在经济上、技术上和操作上等是否可以实现和接受。因此,可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行系统分析和设计的过程。 1)四级标题(1)技术可行性 4 网上购书系统 本系统运行在windows上,硬件上不存在问题。实现技术上,采用较经典的基于MVC的web框架;web层使用具有Apache的一个开源框架,数据库使用Mysql5.1版。部署在Tomcat上运行。所有这些技术和产品都已较为成熟,技术可行性应该是没有问题的。 (2)经济可行性 从绪论中的可以看到,网上书店从计划到系统实现,我们所使用的所有技术都是免费开源的。从硬件角度来看,一个小型的网上书店只需要一台装有windows系统的电脑,这样就可以满足要求,可以说运行的成本是十分低廉的;但同时带来的效益完全可以有利可图。因此经济上也是可行的。 (3)操作可行性 本系统的界面操作都较为简洁、方便,完全可以满足一般人群的操作需求。不用太多的计算机知识,友好的图形和提示可以上新手尽快上手。 (4)法律可行性 该平台是作为毕业设计与商业无关,又因为是自主开发设计,因此不会构成他人利益冲突和侵权,在法律上是可行的。 综上所述,本购书系统中技术上、经济上、操作上和法律上都是可行的。 2.3系统设计的特点 我所设计和开发的网上购书系统试经过很长时间的调查和分析才开始具体实施的,它的主要特点是改变了以往的购物只能过现实的书店才能达到的结果,采用Web技术,借助于Internet 互联网广泛应用技术,达到资源共享,提高以往购书(建议改为实体书店)的局限性,缩短人们的时间和提高工作效率,具有较好的交互性,从而实现信息化,化,系统化,网络化的平台,使整个购书活动过程简单、方便、易行。 2.4系统的功能需求分析 本设计把页面中一些常用的部分集成模块,这样设计新的页面是如果有重复出现的部分,只需要拿现成的模块来组装就可以了。设计对数据库的调用采用三层架构设计,对于需要连接数据库的页面,通过统一的数据库调用管理,给页面分配连接,这样就方便了对数据库的 调用和管理,同时使得对数据库的调用不会产生拥塞,并且在一定程度上增加了数据库的安全性。网上购书系统要求模拟现实中的买书场景,我们以此来进行需求分析。 (1)基本业务功能 5 网上购书系统 用户可以注册登录网站,可以对自己的个人信息进行修改,浏览查找自己所需要的书籍,在线购书,添加到购物车,在购物车中可以添加删除数据,查看购物车中内容,下订单并整理。 (2)基本数据维护功能 把1,2改成从系统的几类用户功能分析入手 管理员可以对所有书籍进行管理,包括添加、删除、更新等操作;对会员可以进行查看、修改、删除等操作;图书管理和订单处理。 分析完毕后,应该有分析结果,也就是说应该有系统的功能结构图 2.5系统设计的总体规则 我自己做的系统的主要设计规则有:注意以下叙述不专业,要有点文采,记住你现在是在写论文 简单性:在实现平台的功能的同时,尽量让平台操作简单易懂,这对于一个网站来说是非 常重要的。 比如说上面的话,你就应该写在系统界面友好,比较人性化等 针对性:该平台设计是网上购书系统及后台管理的定向开发设计,所以具有专业突出和很强的针对性。 实用性:该平台能完成电子书籍展示和管理员管理的基本信息,具有良好的实用性。 3(系统主要架构及开发技术 3.1基于B/S的体系结构 网上购书这种基于Web的系统,传统的C/S架构已经不能满足大量用户的访问和操作,B/S基于浏览器的架构则是目前网络系统应用的主流,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。B/S 结构简化了客户机的工作,客户机只需配置少量的客户端软件。服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。浏览器发出请求,而其余如数据请求、加工、结果返回以及动态网页生成等工作全部有Web Sever 完成。实际上B/S体系结构是把二层C/S结构的事务处理逻辑模块从客户机的任务中分离出来,由Web服务器单独组成一层来负担其任务,这样客户机的压力减轻了,把负荷分配给了Web服务器。这种三层体系结构如图3-1所示 6 网上购书系统 3.2开发技术的选择 合理的选择开发技术,对于网站开发的完成情况有着非常重要的影响。要开发一个网站,首先要选择一个动态网页开发技术。我觉得在传统的HTML代码中,利用HTML标签的扩展,构成页面,JSP的综合实力是最强的,所以就选择基于JAVA的JSP技术/Servlet技术和javascript脚本语言等作为动态网页的开发技术。 接着介绍Jsp的优点和mysql的优点 4(系统设计 通过上述分析,在建网上购书系统之前,先对数据库进行分析,设计好系统的功能模块,并建好系统所需的数据库及要用到的一些表。 4.1系统功能模块设计 4.1.1前台功能和后台功能模块 根据上述各项功能的分析,可以画客户界面、管理员界面的功能模块图。功能模块分为用户功能模块和管理员功能模块,用户登陆后的主要功能是实现网上购书,管理员功能模块主要是实现管理员对书店的管理,如用户管理、图书管理、订单管理等。 7 网上购书系统 用客用户登录 在线购书 查用查图查在看户看订书购看注线购查图购单书册 物信询书登书 车 息陆 删修提清查继查除改交空购看续看购已购购购图书购订书 选买物物书书单 书书车车 功能图不精练,我想你应该从不同用户身份有不同的功能来画这个图,而且这个图有点累赘,买书一定要用 户注册吗,也许我就是看客,也要注册吗? 此图应该在2.4功能图中有所体现,改变一下形式后放在2.4中 8 重新登陆 重新登陆 开 始 管理员用户登陆登陆退 出 退 出 登 陆 登陆 失败 失败 用查现添查户添看图查在订有加用看注加订购书看线图图单户购册新单查书图购 管书书管物登图信询书书 管分理理车 陆书 息 理类 网上购书系统 管理员登录 用户管理 添现添加订用有加图图单户新书管管书图分管理理 书 类理 删删删提修修清查继查除除除交改改空看购续看购已已已购购购购图购订书书 选选选物买买物书书单 书书书车书书车 图4-2 管理员界面后台系统管理功能模块 将此图与上图合并 4.1.2注册功能流程象这种细节介绍,应该是先给界面,再给其功能,然后给流程图,最后给出代码2)最好 让系统设计与实现合为一章来写 如图4-1-2所示:图需重画 开始注册 点击注册按 钮 填写注册信 息 提交注册信息否 注册信息格式 是否正确 是 注册成功 9 网上购书系统 图4-1-2 注册的具体实现为: 点击主页面的用户注册选项后,会弹出一个注册信息页面,用户需要如实填写用户名,密码,真实姓名,E_mail,电话,地址,邮编等各项信息,提交后,系统进行判断该用户名是否注册过,如果已经存在则弹出新页面,提示用户该用户名已经注册过,如果没有则进行下一步判断,用户输入的两次密码是否一致,然后依次往后判断用户所填的各项信息是否符合要求,直到所有信息均正确无误,系统将提示用户注册成功,用户登陆后,就可以进行有效的购物了。 4.1.3用户登录流程 (照上面的修改,以下亦同) 如图4-1-3所示: 图4-1-3 用户登录,首先要有一个提供用户登录的表单。用户登录的表单应该嵌入整体的结构中。在实际 的应用中,可以这样设计,如果用户没有登录,则在页面中显示用户登录的选项,用户要有一个用户名 和密码。商务网站需要很高的稳定性和安全性,因此对用户名不允许使用恶意的代码作为用户命。同时 对密码也要求保密,将密码加密后再存入数据库。 10 网上购书系统 4.1.4书籍查看流程(照上面的修改,以下亦同) 如图4-1-4所示: 图4-1-4 书籍查看功能使用进入书籍列表进行选择书籍,节省时间,提高效率,查看书籍详情,满意则进入下订 单 。 4.1.5购物车流程(照上面的修改,以下亦同) 如图4-1-5所示: 11 网上购书系统 图4-1-5 购物车具体的实现可采用这种形式: 1.列出商品的列表,使用户能够自由选择所需要的书籍。 2.当用户在点击"添加到购物车“的链接时,执行如下功能: 检查用户购物车类是否存在。如不存在,则建立,并注册;在有用户购物车类存在的情况下, 检查该类中是否有该书籍。如存在,则书籍数量相应加1;如没有该书籍,则将该书籍添加到该购物车中。 4.1.6书籍管理流程 12 网上购书系统 如图4-1-6所示 图4-1-6 在该功能里管理员可以进行不需要的书籍的删除,在这里管理员当然也可以浏览到书籍的详细信 息。并且比普通用户在浏览书籍里所看到的书籍信息多一个该书籍在数据库中。 5(系统功能的具体实现 (与第4章合在一块写) 5.1系统数据库表的基本设计 数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率,以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。用户的需求具体体现在各种信息的提供,保存,更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入.收集基本数据,数据结构以及数据处理的流程。 通过上述系统功能分析,针对一般在线书店的需求,总结出如下需求信息。 用户分一般用户和管理员。 13 网上购书系统 订单只能生成总的订单。 每一本图书都从属一种类型。 一个用户可以购买多本图书。 一个用户对应一张定单列表。 根据上面的设计规划出的实体有:管理员信息实体、用户信息实体、图书实体、图书分类 实体、订单实体、订单列表实体。 5.1.1 E-R图 书用户管理员 订单列表订单 购 图书 图书分类 什么是E—R图, -1 实体之间关系E-R图 图2 管理员 用户名密码 这叫实体——属性图 图2-2 管理员信息E-R图 14 网上购书系统 图书分类 分类编号分类名称 图2-3订单列表E-R图 书名类别 书号作者 图书出书价版社 总数量剩数量 内容介绍 图2-4 图书E-R图 订单列表 图书号订单号 订货数量 图2-5 订单列表E-R图 用户名密码 邮件真姓名 用户性邮编别 电话地址 注册时间 图2-6 用户信息E-R图 15 网上购书系统 图2-7 订单E-R图 订单列表 订单号图书号 订货数量 交货时间订单编号 用户号购物车总金额 用户是否汇款 购书 书名剩数量 书号作者 图书书价出版社 类别总数量 内容介绍 图书分类 分类名称 分类编号 能否把以2.1-2.6合为一张实质性的E-R图 16 网上购书系统 图2-8 综合E-R图 5.1.2所用表 (以下放入2.6中,数据库的设计,三线表) 下面是设计中要使用的所有表: (1)表名:userinfo用于存储用户详细信息信息 表5-1userinfo用户信息列表 Field Type Null Key DefaulExtra comment t userId Int(14) - PRI Null Auto_increme主键,增 nt usernamvarchar(15- 0 - - 用户名 e 0) passwd varchar(15 - 0 - - 密码 0) truenamvarchar(15- 0 Null - 真实姓 e 0) 名 address varchar(15Yes 0 Null - 地址 0) phone varchar(15Yes 0 Null - 电话 0) postcodvarchar(15Yes 0 Null - 邮编 e 0) email varchar(15Yes 0 Null - 邮件 0) grade int(14) Yes 0 Null - 级别 (2)表名:goods用于存储图书信息 表5-2 goods图书信息 (图书号就是最好的主键) Field Type Null Key DefaulExtra comment t goodsId int(14) - - - Auto_increme主键 nt goodsNavarchar(15- - - - 书籍名 me 0) goodsInvarchar(25 - - - - 书籍介 tro 0) 绍 Goods float(14,0- 0 Null - 书籍价 17 网上购书系统 price ) 格 goodsNuint(14) Yes 0 Null - 书籍号 m varchar(15Yes 0 Null - 出版者 publish0) er photo varchar(15Yes 0 Null - 图片 0) type varchar(15Yes 0 Null - 类型 0) clickNuint(14) Yes 0 Null - 点击数 m (3)表名:orders 用于存储用户订单信息 (以下两表有问题,难道一张订单只卖一种书 吗,我买几本不同的书,哪得开N个订单吗,) 表3-1 orders订单信息表 Field Type Null Key DefaulExtra comment t int(14) - PRI Null Auto_increme主键,增 ordersInt d userId int(14) - 0 - - 用户ID orderDadate - 0 - - 订单时te 间 payMode varchar(15- 0 Null - 支付方 0) 式 isPayed varchar(15Yes 0 Null - 支付 0) Total float(14,0Yes 0 Null - 总价 Price ) (5)表名:orderdetail用于存储用户购物车订单信息 表3-4 orderdetail购物车订单列表 Field Type NulKeDefaulExtra comment l y t ordersId int(14) Yes PRNull Auto_increme主键,增 I nt goodsId int(14) - - - - 书号 nums int(14) - - 0 - 订书数 18 网上购书系统 5.2 功能总体说明 5.2.1功能页面结构 (1) 前台功能页面 主页面框架: Index.jsp ,head.jsp,left.jsp,tail.jsp,right.jsp 商品展示:Right.jsp,showDetail.jsp 购物车:showMyCar.jsp 登录注册:Shopping.jsp,reg.jsp 确认信息:Shopping1.jsp 生成订单:Shopping2.jsp (2) 后台功能页面 主页面框架:Main.jsp,lefts.jsp,center.jsp,down.jsp,top.jsp,middel.jsp 商品管理:tab/goods.jsp,editoradd.jsp 订单管理:tab/order.jsp 登录: login.jsp 5.2.2主要功能流程图:(以管理员和顾客等不同用户分开写一个注册和一个登录,下图可以不要了,或画一流程图解释代码,注册和登录成功后,各干什么,为什么两个都是shopping.jsp) 19 网上购书系统 重新登陆 重新登陆 开 始 管理员用户登陆登陆退 出 退 出 登 陆 登陆 失败 失败 用查现添查户添看图查在订有加用看注加订购书看线图图单户购册新单查书图购 管书书管物登图信询书书 管分理理车 陆书 息 理类 5.3各功能模块的实现 5.3.1登录和注册功能模块 当用户想购买自己想要的商品就必须要登录才能完成整个购买的过程,当用户没有账号和 密码时就可以点击用户注册按钮进行注册,登录的页面如下: 20 网上购书系统 实现整个登录过程的代码块如下: 当你注册成功时,根据用户名和密码进行登录,必须是正确的用户名和密码,否则登录不成功, 当你输入用户名和密码,会通过
把 username,password,operSign提交到后台的LoginCl类中进行验证,如果用户名和密 码正确就可以跳转到主页面,实现登录功能的代码如下: String operSign=ParamUtil.getString(request, "operSign"); String username=ParamUtil.getString(request, "username"); String passwd=ParamUtil.getString(request, "password"); if(operSign.equalsIgnoreCase("prosceniumlogin")) { if(ubb.checkUser(passwd, username)) { if(ub.getGrade()==1) { request.getSession().setAttribute("userinfo", ub); MyCarBO mcb=(MyCarBO)request.getSession().getAttribute("mycar"); ArrayList al=mcb.showMyCar(); request.setAttribute("mycarinfo", al); if(al!=null) { request.getRequestDispatcher("shopping1.jsp").forward(request, response); } }else { request.getRequestDispatcher("shopping.jsp").forward(request, response); } }else 21 网上购书系统 { request.getRequestDispatcher("shopping.jsp").forward(request, response); } 注册页面如下: 当用户没有用户名和密码时,需要在登录页面点击用户注册按钮跳转到注册页面进行注册,注 册的实现代码如下: 当用户单击注册按钮时,会同
表单 把所有信息都提交到后台loginCl类中进行插入用户信息表中,实现代码如下: String operSign=ParamUtil.getString(request, "operSign"); String username=ParamUtil.getString(request, "username"); String passwd=ParamUtil.getString(request, "password"); String truename=ParamUtil.getString(request, "truename"); 22 网上购书系统 String email=ParamUtil.getString(request, "email"); String phone=ParamUtil.getString(request, "phone"); String address=ParamUtil.getString(request, "address"); String postcode=ParamUtil.getString(request, "postcode"); String grade=ParamUtil.getString(request, "grade"); UserBean userBean=new UserBean(); UserBeanBO ubb=new UserBeanBO(); if(operSign.equalsIgnoreCase("reg")) { userBean.setUsername(username); userBean.setPasswd(passwd); userBean.setTruename(truename); userBean.setEmail(email); userBean.setPhone(phone); userBean.setAddress(address); userBean.setPostcode(postcode); userBean.setGrade(Integer.parseInt(grade)); boolean b=ubb.insertUserInfo(userBean); if(b) {request.getRequestDispatcher("shopping.jsp").forward(request, response); } } 5.3.2查看书籍模块 书籍主要分为几小类,如哲学,管理学,计算机。 当你想查看哲学类图书时,只要点击“哲学”超链接(“管理学”,“计算机”超链接同样)就会 出现如图所示: 23 网上购书系统 当你想实现查看哲学,管理学,计算机等功能时,你只需要通过超链接把书籍类型的值传递(type)传到right.jsp中,并把其作为参数,然后调用GoodsBeanBO类中的方法,getGoodsByPage这个方法就能得到不同类型的图书,实现代码如下: GoodsBeanBO gbb=new GoodsBeanBO(); Hashtable typeParam=new Hashtable(); String s_pageNow=ParamUtil.handleSpaceAndNull((String)request.getAttribute( "pageNow")); String type=ParamUtil.getString(request,"type");//图书类型 if(type.equalsIgnoreCase("")) { type=ParamUtil.handleSpaceAndNull((String)request.getAttribute("type ")); 24 网上购书系统 } int pageNow=1; if(!s_pageNow.equalsIgnoreCase("")) { pageNow=Integer.parseInt(s_pageNow); } ArrayList al=gbb.getGoodsByPage(pageNow,type); int pageCount=gbb.getPageCount(type); 这就是在right.jsp中的代码。 5.3.3查看书籍详情信息模块 当你点击书籍名称超链接时,就是进入书籍详细信息模块,也就是说你可以看到该书籍的整个信息包括作者,价格等。书籍详细信息模块如图所示。 在该页面中你可以查看自己该书籍的信息并进行购买。还可以返回购物大厅。 以上功能的代码实现: 当你点击书籍列表中的书籍名称的超链接时,会执行ShowGoodsClServlet并传flag和该商品的goodsId两个参数到showGoodsClServlet中并通过 String flag=ParamUtil.getString(request,”flag”); 25 网上购书系统 String goodsId=ParamUtil.getString(request,”goodsId”); 进行获取。 实现代码如下: if(flag.equals("showDetail")) {goodsId=request.getParameter("id"); GoodsBean gb=goodsBeanBO.getgoodsBeanById(goodsId); int clickNum=gb.getClickNum(); goodsBean.setClickNum(clickNum+1); goodsBean.setGoodsId(Integer.parseInt(goodsId)); goodsBeanBO.updateGoodsById(goodsBean); request.setAttribute("goodsInfo", gb); request.getRequestDispatcher("showDetail.jsp").forward(request, response); } 5.3.4购物车功能模块 自己想要购买的书籍添加到购物车里面,当你点击查看书籍详情列表中的按钮时就会把要购买的书籍添加到购物车中,在购物车中可以实现删除,修改数量,全部删除,查看书籍详细等操作。购物车如图所示: 26 网上购书系统 实现删除,删除全部商品,修改数量,查看等代码如下: 1. 删除的实现代码。 当你点击删除超链接 删除时就会执行ShoppingClServlet并把该商品goodsId和flag标记传到ShoppingClServlet中并通过 String flag=ParamUtil.getString(request,”flag”); String goodsId=ParamUtil.getString(request,”goodsId”); 进行获取。删除操作的代码块如下: MyCarBO mcb=(MyCarBO)request.getSession().getAttribute("mycar"); public void delGoods(String goodsId) { hm.remove(goodsId); } 以下在ShoppingClServlet这段代码是调用了MyCarBo中的delGoods方法删除hasbMap集合类所存在数据 27 网上购书系统 if(flag.equals("delGoods")) { mcb.delGoods(goodsId); } 2. 查看操作实现代码如下: 当你点击查看超链接 查看时,就会把flag和goodsId传到ShowGoodsClServlet中,执行相应的代 码块,实现的代码块如下: String flag=ParamUtil.getString(request, "flag");// if(flag.equals("showDetail")) { goodsId=request.getParameter("id"); GoodsBean gb=goodsBeanBO.getgoodsBeanById(goodsId); int clickNum=gb.getClickNum(); goodsBean.setClickNum(clickNum+1); goodsBean.setGoodsId(Integer.parseInt(goodsId)); goodsBeanBO.updateGoodsById(goodsBean); request.setAttribute("goodsInfo", gb); request.getRequestDispatcher("showDetail.jsp").forward(reques t, response); } 然后跳转到showDetail.jsp中 3. 修改数量实现代码如下: 修改数量通过
form表单进行提交,提交到ShoppingClServlet中,并根据flag 标记找到相应的代码块进行运行,代码块如下: String flag=request.getParameter("flag"); 28 网上购书系统 String goodsId=request.getParameter("goodsId"); if(flag.equals("updateGoodsNum")) { String goodsid[]=request.getParameterValues("goodsId"); String newNum[]=request.getParameterValues("newNum"); i=0;i 执行ShopingClServlet中的删除购物车中的全部商品,实现代码块如下: else if(flag.equals("delAll")) { mcb.clear(); }删除HashMap中的所有数据 29 网上购书系统 5.3.5确认信息模块 如图所示: 当你登录成功时,就会跳到确认信息页面,查看自己的信息是否要修改或者是否有错误。 该页面主要要实现完成订单和修改个人信息,返回更改购物车等功能, 实现完成订单的代码如下: 该功能通过点击javascript方法 function finishOrder() {window.location.href="<%=path%>/OrderCl" }来操作OrderCl中实现完成订单功能的后台代码块, 后台代码块如下:在OrderClServlet类中 MyCarBO mcb=(MyCarBO)request.getSession().getAttribute("mycar"); 30 网上购书系统 long userId=((UserBean)request.getSession().getAttribute("userinfo")).get UserId(); OrderInfoBean oib=obb.addOrder(mcb, userId+""); if(oib!=null) {request.setAttribute("detailBean", oib); request.getRequestDispatcher("shopping2.jsp").forward(request, response); }else { ArrayList al=mcb.showMyCar(); request.setAttribute("mycarinfo", al); request.getRequestDispatcher("shopping1.jsp").forward(request, response); } 实现修改个人信息的代码如下: 通过 把修改的个人信息提交到UserClServlet进行处理,实现的代码如下 UserBean ub=new UserBean(); UserBeanBO ubb=new UserBeanBO(); String username=request.getParameter("username"); String truename=request.getParameter("truename"); String address=request.getParameter("address"); String phone=request.getParameter("phone"); String email=request.getParameter("email"); String postcode=request.getParameter("postcode"); String userId=request.getParameter("userId"); int userIds=Integer.parseInt(userId); 31 网上购书系统 if(username!=null&&!username.equals("")) {ub.setUsername(username); } if(truename!=null&&!truename.equals("")) {ub.setTruename(truename); } if(address!=null&&!address.equals("")) {ub.setAddress(address); } if(phone!=null&&!phone.equals("")) {ub.setPhone(phone); } if(email!=null&&!email.equals("")) {ub.setEmail(email); } if(postcode!=null&&!postcode.equals("")) {ub.setPostcode(postcode); } if(userId!=null&&!userId.equals("")) {ub.setUserId(userIds); } if(ubb.Update(ub)) {request.getRequestDispatcher("success.jsp").forward(request, response); }else { MyCarBO mcb=(MyCarBO)request.getSession().getAttribute("mycar"); ArrayList al=mcb.showMyCar(); request.setAttribute("mycarinfo", al); request.getRequestDispatcher("shopping1.jsp").forward(request, 32 网上购书系统 response); } 实现返回更改购物车的实现代码如下: 该功能通过触发javascript的方法function showMyCar(goodsId) {window.open("ShoppingClServlet?flag=addGoods&goodsId="+goodsId,"_se lf"); }进行执行ShoppingClServlet类中的代码块,实现代码块如下所示: String goodsId=request.getParameter("goodsId"); String flag=request.getParameter("flag"); if(flag.equals("addGoods")) { GoodsBean gb=goodsBeanBO.getgoodsBeanById(goodsId); clickNum=gb.getClickNum(); int goodsBean.setClickNum(clickNum+1); goodsBean.setGoodsId(Integer.parseInt(goodsId)); goodsBeanBO.updateGoodsById(goodsBean); mcb.addGoods(goodsId, "1"); } 5.3.6生成订单模块 该模块只提供查看订单,没有其他操作,图片如下: 33 网上购书系统 5.3.7 后台管理模块的实现,如图所示 这个过程中,点击登录后,将用户名和密码框中的值传递到LoginCl中进行验证,如果用户名和密码同数据库中一致,那么登录成功,转到main.jsp中,具体实现关键代码如下: public boolean checkUser(String pass,String user) { boolean b=false; 34 网上购书系统 try{ conn=new ConnDB().getConn(); String sql="select passwd from userinfo where username='"+user+"'"; System.out.println("SQL=="+sql); ps=conn.prepareStatement(sql); rs=ps.executeQuery(); if(rs.next())-------------什么意思,所有代码改用于5号,单倍行距 { String s_pass=rs.getString(1); if(s_pass.equals(pass)) { return b=true; } } }catch(Exception e) { e.printStackTrace(); } return b; } 35 网上购书系统 5.3.8书籍管理功能模块的图片如下: 显示书籍列表的功能代码如下: 当点击lefts.jsp中查看书籍超链接 查看书籍 就会执行以下的以下的代码块 String flag=ParamUtil.getString(request, "flag");// if(flag.equalsIgnoreCase("showGoods")) { List listGoods=goodsBeanBO.getGoodsBean(); request.setAttribute("listGoods", listGoods); request.getRequestDispatcher("/tab/goods.jsp").forward(request, 36 网上购书系统 response); } 1.添加书籍功能模块的实现代码如下: 在其文本框中输入要填写的信息,然后点击保存按钮,会通过
把所有信息提交到后台处理,后台的处理代码如下 String flag=ParamUtil.getString(request, "flag");// GoodsBean goodsBean=new GoodsBean(); GoodsBeanBO goodsBeanBo=new GoodsBeanBO(); if(flag.equalsIgnoreCase("")) { su=UpAndDownLoad.returnSmartUpload(this.getServletConfig(), request, response); flag=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("flag")); String goodsName=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("goodsName")); 37 网上购书系统 String goodsIntro=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("goodsIntro")); String goodsNum=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("goodsNum")); String goodsprice=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("goodsprice")); String publisher=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("publisher")); String type=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("type")); goodsId=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("goodsId")); String fileName=UpAndDownLoad.upload(su); goodsBean.setGoodsName(goodsName); goodsBean.setGoodsIntro(goodsIntro); goodsBean.setGoodsNum(Integer.valueOf(goodsNum)); goodsBean.setGoodsprice(Float.valueOf(goodsprice)); goodsBean.setPublisher(publisher); goodsBean.setPhoto(fileName); goodsBean.setType(type); } GoodsBeanBO goodsBeanBO=new GoodsBeanBO(); if(flag.equalsIgnoreCase("addGoods")) { 38 网上购书系统 b=goodsBeanBo.insertGoods(goodsBean); if(b) { List listGoods=goodsBeanBo.getGoodsBean(); request.setAttribute("listGoods", listGoods); request.getRequestDispatcher("/tab/goods.jsp").forward(request, response); } } 2.修改书籍功能模块的实现如图: 在上面就能修改你需要的内容,然后点击保存按钮就会通过 、
提交到后台ShowGoodsServlet去处理 处理代码块如下: String flag=ParamUtil.getString(request, "flag");// GoodsBean goodsBean=new GoodsBean(); GoodsBeanBO goodsBeanBo=new GoodsBeanBO(); 39 网上购书系统 if(flag.equalsIgnoreCase("")) { su=UpAndDownLoad.returnSmartUpload(this.getServletConfig(), request, response); flag=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("flag")); String goodsName=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("goodsName")); String goodsIntro=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("goodsIntro")); String goodsNum=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("goodsNum")); String goodsprice=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("goodsprice")); String publisher=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("publisher")); String type=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("type")); goodsId=ParamUtil.handleSpaceAndNull(su.getRequest().getParameter("goodsId")); String fileName=UpAndDownLoad.upload(su); goodsBean.setGoodsName(goodsName); goodsBean.setGoodsIntro(goodsIntro); 40 网上购书系统 goodsBean.setGoodsNum(Integer.valueOf(goodsNum)); goodsBean.setGoodsprice(Float.valueOf(goodsprice)); goodsBean.setPublisher(publisher); goodsBean.setPhoto(fileName); goodsBean.setType(type); } GoodsBeanBO goodsBeanBO=new GoodsBeanBO(); if(flag.equalsIgnoreCase("editGoods")) { goodsBean.setGoodsId(Long.parseLong(goodsId)); b=goodsBeanBo.updateGoods(goodsBean); if(b) { List listGoods=goodsBeanBo.getGoodsBean(); request.setAttribute("listGoods", listGoods); request.getRequestDispatcher("/tab/goods.jsp").forward(request, response); } } 删除功能模块的实现。 当你点击删除按钮时,就会弹出一个提示框 如果按确定时就会触发删除的方法,后台处理如下 if(flag.equalsIgnoreCase("delGoods")) { goodsId=ParamUtil.getString(request, "goodsId"); String[] goodsIds=goodsId.split(","); for(int i=0;i查看订单时就会 执行以下的方法:后台处理如下: if(flag.equalsIgnoreCase("showOrder")) 42 网上购书系统 { List listOrder=obb.getOrderBean(); request.setAttribute("listOrder", listOrder); request.getRequestDispatcher("/tab/order.jsp").forward(request, response); } 删除订单列表功能实现如下: 当你点击删除按钮时,就会出现一个文本框,当你按确定按钮时,就会执行以下代码 for(int i=0;i
/
本文档为【网上购书系统】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
热门搜索

历史搜索

    清空历史搜索