《网上书店交易系统设计毕业论文.doc》由会员分享,可在线阅读,更多相关《网上书店交易系统设计毕业论文.doc(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、网上书店交易系统设计摘 要:本文重点介绍了 “网上书店”的开发意义及如何分析、设计和实现的。基本功能包括用户注册会员、登录、图书展示、图书查询、在线浏览图书、远程购买、远程交易等。系统开发工具是使用jsp及Access数据库,系统是基于零售商实体户背景开发的,可以有效的实现网上图书交易。 在论文中首先介绍了电子商务及开发所使用软件的相关知识,并根据以上知识制作网站。文中主要包括需求分析,总体设计,功能设计,数据库设计与实现等,并通过流程图和文字加以解释说明。关键词:JAVA, Struts, Servlet, JSP, 电子商务,网络编程, 网上书店Online bookstore busin
2、ess systemAbstract: This article has introduced the main body of the web bookshop exploitation significance and how to analyse,desige and realiaze. The fundamental function logs on including consumer register member, the book shows book , browses on line, long-range purchase , long-range business et
3、c. The system develop implement is to use jsp and the Access data base , system is that background is development owing to entity family of retail dealer , the book trades on being able to be effective realizing a net. And have introduced Electronic Commerce first and have developed the what be used
4、 a software relevance knowledge in the thesis, make website according to all above knowledge. Include the need analysis , population design , function design mainly in culture, data base design and realization etc., and by the fact that the flow chart and characters explain explanation additionally
5、.Key words:JAVA, Struts, Servlet, JSP, E-commerce, Network programming, online bookstore.目录:网上书店交易系统设计11电子商务概述31.1电子商务概念31.2 我国电子商务发展现状31.3 电子商务的发展前景42Struts框架与JAVA语言介绍42.1 Struts的由来和发展42.1.1 MVC简介52.2 Struts优缺点72.3 Struts的工作流程82.4 JAVA语言概述92.5 JAVA语言在网络中的功能102.6 Servlet 技术103网上书店详细设计113.1开发网络书店的意义1
6、13.2需求分析123.3 总体设计133.4 功能设计133.5 数据库设计与实现143.6网上书店基本流程153.7 网上书店各页面功能163.8 业务逻辑层各bean功能193.9 控制处理层204总结21参考文献231电子商务概述1.1电子商务概念随着电子技术和因特网(Internet网络)的发展,信息技术作为工具被引入到商贸活动中,产生了电子商务(Electronic Commerce简写EC或Electronic Business简写EB)。通俗的说,电子商务就是在计算机网络(主要指Internet网络)的平台上,按照一定的标准开展的商务活动。当企业将它的主要业务通过内联网( In
7、tranet)、外联网(Extranet)以及Internet与企业的职员、客户、供销商以及合作伙伴直接相连时,其中发生的各种活动就是电子商务。1.2 我国电子商务发展现状随着计算机与网络技术的普及与发展,我国的电子商务迅速崛起,众多的信息技术企业、风险投资公司、生产流通企业纷纷开展电子商务。从国家经贸委对630多家企业的调查来看,目前企业在互联网应用和开展电子商务方面,东部地区的企业好于中部地区,中部好于西部;所在地在大城市的企业好于地处偏远的企业,新企业好于老企业。经济实力强、利润空间大的企业,信息化建设和电子商务开展得比较好。如联想集团目前已经完成了供应链环节的信息化,做好了开展电子商务
8、的全部基础性工作。同时,大多数企业对信息化建设比较重视,普遍看好电子商务的未来,企业内部信息化建设取得了积极进展,正在由信息孤岛向信息集成跨越;建立在网络应用基础上的电子商务建设也取得了一定进展,一些企业已经通过网络开展采购业务和网上销售。 企业电子商务的开展一是提高了企业的经营管理水平;二是促进了企业经营管理观念和制度的变革;三是培养和锻炼了一大批人才;四是改善了企业形象,提高了企业的市场认知程度。互联网应用水平较高的企业,其市场开拓能力、成本控制能力、业务流程的重组及企业管理的观念与制度,均得到了不同程度的提高和优化。中石化集团通过网上采购,对采购全过程进行实时监控,使采购过程公开化、规范
9、化,实现了“阳光作业”,在很大程度上杜绝了暗箱操作,大大降低了采购成本,在2000年8月15日物资采购系统正式投入运行使用后的8个月中,上网供应商1700多家,网上累计成交金额34.8亿元,节约采购资金1.87亿元,节约5。联想集团通过实施资源管理计划(ERP),规范和优化了77个业务流程,加强了财务、销售、生产制造、采购等子系统之间的协同性。许多企业在实施信息化和电子商务建设中,企业领导的观念发生了很大变化,深化了企业内部管理制度的改革,也培养和锻炼了一大批既懂业务又懂信息技术的综合性人才。1.3 电子商务的发展前景21世纪将进入电子商务时代,是社会发展的必然,我们将别无选择地生活在电子商务
10、时代。如何面对电子商务方式、如何适应数字化生存并积极参与电子商务时代的国际竞争,是涉及到每个人、每个企业、部门及国家发展与生存的重大问题,也是国家管理部门现在应该规划、并促进其发展的战略问题。 目前电子商务在国际上已经得到迅速发展和实践,将在国际商贸和社会生活中占据主导地位。估计到2000年电子化贸易额将有上千亿美元的交易量,并形成世界性电子商务环境。国内电子商务的研究逐渐深入,实践上已经有所行动。我国的管理部门应密切国际合作、制定相应法律、法规和技术标准,及时营造良好的电子商务环境;商务部门和应充分认识到电子商务的社会、经济和生活等方面的特点、电子商务活动的方式方法、以及电子商务的发展和应用
11、表现,促使管理人员熟悉电子商务环境、逐步进入电子商务的活动方式、进行电子商务管理、最终能参与电子商务时代的国际竞争。2Struts框架与JAVA语言介绍2.1 Struts的由来和发展Struts 框架工具是 Apache 基金会 Jakarta 项目中推出的一个子项目。 Struts 在英文中是支架、支撑的意思,这也体现出 Struts 在开发 Web 应用程序过程所起到的重要作用, Struts 为 Web 应用提供了通用的框架,让开发人员可以把主要精力集中在如何解决实际业务问题上,与此同时 Struts 框架也允许开发人员根据实际需要进行扩展和定制,从而可以更好的适应用户的需求。采用 S
12、truts 可以简化遵循 MVC 设计模式的 Web 应用的开发工作,很好地实现代码重用,使开发人员从一些繁琐的工作中解脱出来,快速开发能够充分发挥 JSP/Servlet 优点、并具有强可扩展性的 Web 应用。总之, Struts 的出现使得 Web 应用的开发过程大大简化,从而能够缩短开发周期、提高开发效率。 Struts 架构一经推出,即受到 Java 开发群体的广泛重视,从 2004 年开始逐渐升温,并日渐成为 Java 创建 Web 应用开发的最流行的框架工具,在目前 Java Web 程序员的招聘要求中,几乎都提出了对 Struts 的要求,精通 Struts 架构已经成为 Ja
13、va Web 程序员必备的技能。 2.1.1 MVC简介模型-视图-控制器(MVC)是80年代Smalltalk-80出现的一种软件设计模式,现在已经被广泛的使用。1、 模型(Model)模型是应用程序的主体部分。模型表示业务数据,或者业务逻辑.2、视图(View)视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。3、控制器(controller)控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态。图21 MVC组件类型的关系和功能MVC 式的出现不仅实现了功能模块和显示模块的分离,同时它还提高了应用系统的可维护性、可扩展性、可移植性和组件的可复用性。 早
14、期的程序中,如果不注意对数功能和显示的解耦合,常常会导致程序的复杂及难以维护。很多VB,Delphi等RAD程序都有这种问题。甚至现在的C#,Java有时候也会出现把业务逻辑写在显示模块中的现象。 管MVC设计模式很早就提出,但在Web项目的开发中引入MVC却是步履维艰。主要原因:一是在早期的Web项目的开发中,程序语言和HTML的分离一直难以实现。CGI程序以字符串输出的形式动态地生成HTML内容。后来随着脚本语言的出现,前面的方式又被倒了过来,改成将脚本语言书写的程序嵌入在HTML内容中。这两种方式有一个相同的不足之处即它们总是无法将程序语言和HTML分离。二是脚本语言的功能相对较弱,缺乏
15、支持MVC设计模式的一些必要的技术基础。直到基于J2EE的JSP Model 2问世时才得以改观。它用JSP技术实现视图的功能,用Servlet技术实现控制器的功能,用JavaBean技术实现模型的功能 。 JSP Model 1 与 JSP Model 2 SUN在JSP出现早期制定了两种规范,称为Model1和Model2。虽然Model2在一定程度上实现了MVC,但是它的应用用并不尽如人意 。图22 JSP Model 1 图23 JSP Model 2 Model2 容易使系统出现多个Controller,并且对页面导航的处理比较复杂, 有些人觉得model2仍不够好,于是Craig
16、R. McClanahan 2000年5月 提交了一个WEB framework给Java Community.这就是后来的Struts.2001年7月,Struts1.0,正式发布。该项目也成为了Apache Jakarta的子项目之一 。Struts 质上就是在Model2的基础上实现的一个MVC架构。它只有一个中心控制器,他采用XML定制转向的URL。采用Action来处理逻辑。2.2 Struts优缺点优点:Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点。使开发者能更深入的了解其内部实现机制。除此之外,Struts的优点主要集中体现在
17、两个方面:Taglib和页面导航。Taglib是Struts的标记库,灵活动用,能大大提高开发效率。另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。关于页面导航,我认为那将是今后的一个发展方向,事实上,这样做,使系统的脉络更加清晰。通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。尤其是当另一批开发者接手这个项目时,这种优势体现得更加明显。我是浙江一家大型公司的的广告部主任,今年刚刚38岁,事业蒸蒸日上!就是这样一个在单位经常被称道的人,他有着不少的压力,夜里总是加班加点,时不时的还会陪
18、老总出差以及出席重要客户的联谊活动。所以,与妻子总是聚散离多,好不容易的一次休假,在与心AI的妻子过xing生活的时候,他不到两分钟都完事了,几次这样的情况使他惶恐不安,精神逐渐的憔悴,善良的妻子看在眼里,疼在心里。一个偶然的机会,他听生意场上的一个朋友向他介绍了一个老中医薇|幸msdf003,马老中医的祖传秘方对男xing早xie有着很好的疗效,于是,我就抱着试试看的态度,在网上订购了一哥周期。用了大概一个星期吧,效果就出来了,比起以前能坚持20分钟了,这让我很开心,所以就用接着订购了两盒,一个疗程的,巩固一下。缺点:Taglib是Struts的一大优势,但对于初学者而言,却需要一个持续学习
19、的过程,甚至还会打乱你网页编写的习惯,但是,当你习惯了它时,你会觉得它真的很棒。Struts将MVC的Controller一分为三,在获得结构更加清晰的同时,也增加了系统的复杂度。Struts从产生到现在还不到半年,但已逐步越来越多运用于商业软件。虽然它现在还有不少缺点,但它是一种非常优秀的J2EEMVC实现方式。2.3 Struts的工作流程 下图是Struts的工作流程,所有的请求都提交给ActionServlet来处理。图24 Struts的工作流程图ActionServlet是一个FrontController,它是一个标准的Servlet,它将request转发给RequestPro
20、cessor来处理, ActionMapping是ActionConfig的子类,实质上是对struts-config.xml的一个映射,从中可以取得所有的配置信息 RequestProcessor根据提交过来的url,如*.do,从ActionMapping 中得到相应的ActionForn和Action。然后将request的参数对应到ActionForm中,进行form验证。如果验证通过则调用Action的execute()方法来执行Action,最终返回ActionFoward。 ActionFoward是对mapping中一个foward的包装,对应于一个url 。ActionFor
21、m使用了ViewHelper模式,是对HTML中form的一个封装。其中包含有validate方法,用于验证form数据的有效性。ActionForm是一个符合JavaBean规范的类,所有的属性都应满足get和set对应。对于一些复杂的系统,还可以采用DynaActionForm来构造动态的Form,即通过预制参数来生成Form。这样可以更灵活的扩展程序。 ActionErrors是对错误信息的包装,一旦在执行action或者form.validate中出现异常,即可产生一个ActionError并最终加入到ActionErrors。在Form验证的过程中,如果有Error发生,则会将页面重
22、新导向至输入页,并提示错误。 Action是用于执行业务逻辑的RequsestHandler。每个Action都只建立一个instance。Action不是线程安全的,所以不应该在Action中访问特定资源。一般来说,应改使用 Business Delegate 模式来对Business tier进行访问以解除耦合。Struts提供了多种Action供选择使用。普通的Action只能通过调用execute执行一项任务,而DispatchAction可以根据配置参数执行,而不是仅进入execute()函数,这样可以执行多种任务。如insert,update等。LookupDispatchActi
23、on可以根据提交表单按钮的名称来执行函数。2.4 JAVA语言概述Java是一种简单易用、完全面向对象、具有平台无关性且安全可靠的主要面向Internet的开发工具。自从1995年正式问世以来,Java的快速发展已经让整个Web世界发生了翻天覆地的变化。在早期,Java比较多的用在浏览器上,插入到网页中(即是Java Applet程序),成为最灵活、最强大的网页多媒体的载体,但由于Java虚拟机相对于个人电脑而言,有占用资源大,安全性相对较差等缺点,Applet逐渐的被后起之秀Flash所替代,但随着Java Servlet的推出,Java在电子商务方面开始崭露头角,最新的JSP(Java S
24、erver Page)技术的推出,更是让Java成为基于Web的应用程序的首选开发工具,目前的Java技术已成为所有大型电子商务项目的必然选择。2.5 JAVA语言在网络中的功能Java程序可以获取网络上结点的图象、声音、HTML文档及文本等资源,并可以对获得的资源进行处理。例如Java程序可以每隔一定时间读取某结点提供的最新数据,并以图表的形式显示出来。在编程处理上,一般先生成一个URL类型的对象,然后用 Java中相应的方法(method)获取该对象所代表的资源。2.6 Servlet 技术Java Servlet是JSP技术的基础,JSP本身就是预先被编译成Servlet,然后再运行的,
25、而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成,Servlet这个名称大概源于Applet,现在国内的翻译方式很多,本文为了避免误会,本文直接采用Servlet这个名称而不做任何翻译,读者如果愿意,可以称之为“小服务程序”。Servlet其实和传统的CGI程序和ISAPI、NSAPI等Web程序开发工具的作用是相同的,在使用Java Servlet以后,用户不必再使用效率低下的CGI方式,也不必使用只能在某个固定Web服务器平台运行的API方式来动态生成Web页面。许多Web服务器都支持Servlet,即使不直接支持Servlet的Web服务器也可以通过附加的应
26、用服务器和模块来支持Servlet。得益于Java的跨平台的特性,Servlet也是平台无关的,实际上,只要符合Java Servlet规范,Servlet是完全平台无关且是Web服务器无关的。由于Java Servlet内部是以线程方式提供服务,不必对于每个请求都启动一个进程,并且利用多线程机制可以同时为多个请求服务,因此Java Servlet效率非常高。但Java Servlet也不是没有缺点,和传统的CGI、ISAPI、NSAPI方式相同,Java Servlet是利用输出HTML语句来实现动态网页的,如果用Java Servlet来开发整个网站,动态部分和静态页面的整合过程简直就是一
27、场噩梦。这就是为什么SUN还要推出Java Server Pages的原因。3网上书店详细设计3.1开发网络书店的意义3.1.1网上书店挤压盗版空间如今发展最快的,最时髦的,恐怕就是网络了。网络给人们带来了实惠、虚拟、幻化,也给文学和图书带来了广阔的生存空间。盗版者利用科学技术,瞄准正版书与盗版书的差价牟取暴利。网络书店的兴起无疑给盗版商以有力的打击,因为发达的网络可以直接疏通图书的发行渠道,缩短了网上购书者与出版社的距离,给图书消费者以清新、便宜的享受。3.1.2网上书店浓缩了图书的库存空间传统图书店内的图书摆放面积是有限的,每增加一本书其成本都在以一定比例增加,而网络书店解决了存储空间问题
28、,每增加一本书成本增长几乎为零。3.1.3数量、种类多,出版时间跨度大综合性的网上书店涉及各种各类内容的图书,提供订购的书目信息达上万、几十万条,而图书出版的时间有最新出版的,也有几十年前的,这是传统书店难以做到的。3.1.4不受时间、地域限制网上书店是24小时向全球各地的用户提供网上服务的,用户借助网络可以漫游于世界各地的图书海洋中,随时选书、下订单。中国人不出国可以去到美国最大的Amazon网上书店;广东人可以不出省去到北京图书大厦(http:www.BJBB.com),进行异地购书。3.1.5 信息丰富网上书店的栏目丰富:特价书、书业视窗、销售排行、新品上架、最新推荐等,动态地向用户提供
29、各种信息,让用户了解书市的最新情况。另外,每种被检索出来的图书也有详尽的介绍,如基本书目信息、封面、目次、内容提要、书评等,这些信息都有助于用户选书。3.1.6多途径综合检索网上书店主要提供分类和自定义搜索的方式对图书或其它商品(音像制品、电脑软件等)进行查找。分类一般是结合中图法按用户的阅读习惯或兴趣分类,同一类的图书相对集中在一起,方便用户在同类图书中挑选出高质量的图书。自定义搜索是用户根据自己所需的图书以主题、书名、著者、出版社等信息作为检索点对图书或其它商品进行一般搜索,如果希望检索结果更准确就使用高级检索-同时使用几个检索点查找。这种方法相对于其它购书方式来说找书更快捷。3.1.7价
30、格低廉一般来讲,网上书店买书,要比普通书店便宜。由于抛弃了传统书店运作的所需的服务设施和多重环节,绝对的成本低廉。由于网上书店运营方式是有订购需要时直接到出版社取效性强,除了一部分有收藏价值的外,绝大多数图书都会“掉价”。3.2需求分析网上书店系统主要是实现网上选书、购书、产生订单等功能的系统。一个典型的网上商城一般都需要实现商品信息的动态提示、购物车管理、客户信息注册登录管理、订单处理等模块。以前的我下班总是满怀ji情的回家,因为妻子总是笑容相对。现在倒好,看着大家满怀希望的回家,我多么希望在家能看到妻子笑脸相迎的对我说“老公,你回来了,晚饭做好了!”为什么这么说呢?还不是我近年来精力大不如
31、以前了,而且阴经短小了许多,唉!现在的我受不了了这种生活,我想反抗,但是阴经短小,早泄让我彻底在妻子的面前陷入了被动,我没有了发言权,这是我无法忍受的。于是我就开始在寻找阴经增大的药物,让妻子瞧瞧我是一个真正的男人!也许是上天的怜悯,我在使用了无数的所谓治疗阴经短小的药后,终于找到了希望,马老中医祖传秘制的丹方走入了我的生活,他薇|杏是msdf003在使用过程中我渐渐的发现自己坚持的时间越来越长,妻子虽然依旧霸道,但是对我也有了根本上的改善。在使用了两个多疗程之后,我终于彻底从阴经短小的YIN影中走了出来,它足足让我增大了3公分多。现在妻子对我是体贴的要命,不得不说是昂立挺让我走出了YIN影,
32、重新找回了做为男人的尊严,找回了生活中自信! 根据网上书店的基本需求,本系统需要完成的具体任务如下:A. 书图查询: 当客户进入网上书店时,应该在主页面中分类显示最新的书目信息,以供客户选择所需图书,同时也应该提供按照图书名称,或者作者信息快速查询所需书目信息的功能。B. 购物车管理:当客户选择购买某图书产品时,应该能够将对应图书信息,如:价格、数量记录到对应的购物车中,并允许客户返回书目查询页面,选择其他商品,并添加到购物车中,当对应的购物订单生成后,应该能够自动清除以生成订单的购物车中的信息。C. 订单处理:对应客户购买图书商品信息的需求,在确定了所购图书商品的价格、数量等信息后,提示用户
33、选择对应的送货方式及付款方式,最终生成对应的订单记录,以便于网站配货人员依据订单信息进行后续的出货、送货的处理。D. 会员注册:为了能够实现图书商品的购买,需要管理客户相关的联系方式、送货地点等相关的信息。3.3 总体设计下表中给出了构成网上书店系统的各个组件,通过下表,可以从宏观上了解各个组件的功能。表31 组件功能表:用户表示层(视图)控制处理层(控制器)业务逻辑层(模型)bookMain.jspActionFormActionDBBookShow.jspLoginFormFirstActionConstantsBookShopCart.jspUserFormBookDetailActio
34、nBookOrderAddress.jspBookIdFormBookSearchActionBookCatOrderConfirm.jspBookCatIdFormLoginActionOrderUserLogin.jspPageIdFormBookBuyActionShopCartUserRegister.jspBookShopCartFromAddrConfirmActionUserOrderHistory.jspBookSearchFormClearShopCartActionWrong.jspDeliveryFormOrderDelActionOrderIdFormOrderHist
35、oryActionPageCtrlActionRegistActionUpdateShopCartAction3.4 功能设计3.4.1图书信息管理该模块实现图书书目信息的分类显示,也是提供图书信息依据书名及作者信息快速搜索的功能。此外,在用户选择了对应书目信息后,还可以显示出有关该图书的详细信息,以便于客户了解所购商品。3.4.2购物车管理用于维护每一个进入网上书店的客户对应的购物车。即将客户所选购的图书商品信息记录到对应的购物车中,以便于到收银台进行结账处理。3.4.3会员注册实现网上书店客户信息的注册、及身份验证。由于目前网上商城普遍采用的方式为送货上门或者邮寄,因此需要收集与客户相关的
36、联系方式、通信地址等信息。3.4.4订单处理根据客户购物车中的信息,以及客户所选择的送货方式和付款方式,连同客户对应的个人信息生成订单,以便于后续进行送货处理。3.5 数据库设计与实现3.5.1 数据库的需求分析依据网上书店的处理需求,对就数据表的设计及功能如下。A 图书基本信息表:存放网上书店所销售图书的基本信息。B 图书分类基本信息表:存放网上书店所提供图书分类的信息。C 客户基本信息表:存放书店客户的基本信息。D 订单信息表:存放与客户相关的订单的基本信息。E 订单条目详细信息表:存放订单中详细条目的基本信息。3.5.2 创建数据表的脚本代码如下:/图书分类基本信息表DROP TABLE
37、 bookcat CASCADE CONSTRAINTS;CREATE TABLE bookcat(idNUMBER PRIMARY KEY,catnameVARCHAR2 (40) NOT NULL);/图书基本信息表DROP TABLE book CASCADE CONSTRAINTS;CREATE TABLE book(idNUMBER PRIMARY KEY,catidNUMBER NOT NULLREFERENCES bookcat(id) ON DELETE CASCADE,nameVARCHAR2 (50) NOT NULL,priceNUMBER NOT NULL,salepr
38、iceNUMBER NOT NULL,descriptVARCHAR2 (500) NOT NULL,authorVARCHAR2 (50) NOT NULL,contentsVARCHAR2 (2000) NULL,imageVARCHAR2 (50) NULL);/客户基本信息表DROP TABLE storeuser CASCADE CONSTRAINTS;CREATE TABLE storeuser(usernameVARCHAR2 (20) PRIMARY KEY,passwordVARCHAR2 (20) NOT NULL,nameVARCHAR2 (20) NOT NULL,te
39、lVARCHAR2 (20) NOT NULL,addressVARCHAR2 (100) NOT NULL,emailVARCHAR2 (50) NULL);/订单信息表DROP TABLE orders CASCADE CONSTRAINTS;CREATE TABLE orders(idNUMBER PRIMARY KEY,usernameVARCHAR2 (20) NOT NULLREFERENCES storeuser(username) ON DELETE CASCADE,timeDATE NOT NULL,deliveryVARCHAR2 (20) NOT NULL,payment
40、VARCHAR2 (20) NOT NULL );3.6网上书店基本流程网上书店在运行过程中页面的基本流程如下图:bookMain.jsp图书查询bookShow.jsp图书详情显示bookShopCart.jsp购物车管理userRegister.jsp新会员注册userLogin.jsp会员登录orderAddress.jsp会员地址确认orderConfirm.jsp订单确认orderHistory.jsp历史订单查询图31 网上书店流程图3.7 网上书店各页面功能3.7.1 网上书店首页bookMain.jsp详细功能及描述l 获取图书分类信息以及图书基本信息集合l 循环显示图书分类信
41、息l 提交显示指定分类图书信息的请求,同时传递对应图书分类编号l 提交书目搜索请求及搜索条件的表单l 提交搜索关键字的表单元素l 选择搜索条件的表单元素l 显示图书记录总数、当前页面编号以及总页数l 循环显示对应图书书目信息l 显示图书名称、价格、销售价格、作者信息l 提交显示图书详细信息请求的超链接l 提交分页显示请求的超链接,同时提交指定页面编号单击分类时将提交“bookSearch.do?bookCatId=%=bookCat.getId()%mode=1”请求,以便于获取对应图书分类的相关信息。当选择了查询依据,并且输入了对应关键字,单击“搜索”按钮时,将提交“bookSearch.d
42、o”请求,同时提交查询条件,进行后续书目信息搜索的处理。当在书目列表中单击查看详细信息请求时,将发出“bookDetail.do”请求,同时传递对应图书记录的编号,以获取指定图书更加详细的信息。此外,在单击“首页”、“上页”、“下页”超链接后,将 “bookPage.dopageId=”、“bookPage.dopageId=”等请求,以实现页面的跳转。3.7.2 显示图书详细信息bookShow.jsp页面详细功能及描述l 依据图书记录编号获取待显示详细信息的图书类型的对象l 分别显示该图书对象的详细信息l 显示图书封面图片、名称、详细介绍、价格、销售价格l 单击“购买”按钮后,将提交放入购
43、物车的请求l 显示图书目录本页面是在控制器响应了网上书店主页提交的查看图书详细信息请求,即“bookDeatial.do”请求后,跳转到的页面。在该页面中将获取到的指定图书详细信息显示出来,同时如果用户单击“购买”按钮,将提交“bookBuy.do?bookId=”请求,进行后续放入购物车的处理。3.7.3显示购物车信息bookShopCart.jsp页面详细功能及描述l 获取该用户购物车中信息的集合l 提交更新购物车请求的表单l 循环显示购物车中的每一条购物记录信息l 设置购买数量的文本框l 显示图书销售价格l 显示图书总价l 从购物车中移除购买记录信息l 更新订单按钮l 提交继续购书请求的
44、超链接l 提交清空购物车请求的超链接l 提交结算付款请求的超链接本页面是在用户选择购买某种图书商品后,进入的页面。在该页面中将显示该用户购物车中现有的所有购买需求记录。同时提供更新购物车的操作界面,例如,可以输入购买数量或者选择删除购买记录。单击“更新订单”按钮后,将提交“updateShopCart.do”请求,进行更新购物车信息的处理。此外,也可以单击“继续购书”按钮,提交“bookSearch.do”请求返回网上书店主页面继续购书,或者单击“清空购物车”按钮提交“clearShopCart.do”请求。同时,如果用户确认去收银台,则可以单击“结算付款”按钮跳转到“userLogin.js
45、p”页面进行用户登录。3.7.4网上书店客户登录userLogin.jsp页面详细功能及描述l 提交用户登录请求,同时提交登录用户信息的表单l 提交登录用户用户名及密码的表单元素l 登录按钮l 提交新用户注册请求的超链接本页面是客户在购物车页面单击“结算付款”按钮后跳转过来的页面,在该页面中,用户在表单中输入用户名及密码,单击“用户登录”按钮后,将提交“login.do”请求,以便于进行后续获取用户相关信息的处理,对于没有用户身份的新客户,可以在本页面中单击“新用户注册”按钮,跳转到“userRegister.jsp”页面进行用户注册。3.7.5 网上书店客户注册userRegister.js
46、p页面详细功能及描述l 提交新用户注册请求,同时提交新用户注册信息的表单l 提交注册用户姓名、地址、电子邮件地址、电话、用户名、密码以及确认密码的表单元素l 注册按钮在本页面中注册用户可以在表单中输入对应的注册信息,在单击“注册”按钮后,将提交“regist.do”请求,同时提交新用户的相关注册信息,以便于进行后续新用户注册的处理。3.7.6 选择送货方式及付款方式orderAddress.jsp页面详细功能及描述l 获取客户信息l 提交选择送货方式及付款方式的表单l 显示客户信息、姓名、地址、电话、送货方式、付款方式本页面是在用户登录通过后,跳转到的页面,在该页面中首先获取对应用户的客户资料,同时提供送货方式以及付款方式的选择,在用户单击“确认”按钮后,将提交“addrConfirm.do”请求,生成生续完整的订单信息。3.7.7 确认订单信息orderConfirm.jsp页面详细功能及描述l 获取购物车信息集合l 获取订单信息、客户信息l 显示客户姓名、地址、电话l 显示购物车中的信息l 显示所购图书书名、数量、总价l 显示整张订单总价l 显示订单信息中的送货方式信息l 显示付款方式信息l 显示订单编号l 提交继续购书的请求l 提交查看该用户所有订