基于Web的网上书店管理系统本科毕业设计(论文)(28页).doc
-基于Web的网上书店管理系统本科毕业设计(论文)-第 22 页本科毕业设计(论文)题目名称: 基于Web的网上书店管理系统 毕业论文(设计)原创性声明本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。 作者签名: 日期: 毕业论文(设计)授权使用说明本论文(设计)作者完全了解*学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。学校可以公布论文(设计)的全部或部分内容。保密的论文(设计)在解密后适用本规定。 作者签名: 指导教师签名: 日期: 日期: 注 意 事 项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词 5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。4.文字、图表要求:1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用A4单面打印,论文50页以上的双面打印4)图表应绘制于无格子的页面上5)软件工程类课题应有程序清单,并提供电子文档5.装订顺序1)设计(论文)2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订3)其它摘 要随着网上贸易的不断发展,网上书店这种新兴的商业形式开始悄悄兴起。此网站正是要实现网上交易,满足当前社会人们的购物需求。设计本课题的主要目的是让人们花最少的钱得到想要的书籍。 本课题采用JSP和Dreamweaver、SQL Server 2000、Photoshop技术等应用软件制作,基于Web实现的。 此系统分为前台管理和后台管理。前台管理是友好的操作界面,供用户浏览、查询使用。包括:浏览商品、查询商品、订购商品、购物车等功能;后台管理是提供给管理员的,其中包括:增加、删除图书信息、查询图书信息、设定用户等级、对图书的类别和对出版商进行管理、查询统计图书销售信息。 本课题共有七章,第一章到第三章介绍了系统设计前的分析、调查工作。第四到第七章介绍了系统的具体设计以及系统的测试。关键词:网上书店;JSP;web;JavaAbstractAlong with the development of the online trading,the online bookstore which is new commercial began quietly rise.This website is to achieve online transactions to meet the shopping needs of the community people. Purpose of the design origin topicis is let all people use lest money and own the books .This subject used JSP,Dreamweaver,SQL Server 2000.Photoshop technology and other software applications to produce, based on the Web to achieve.This system include two parts: an preview manage and another backband manage, the preview manage is a friendly operation windows ,it provide a useful funtion to user. It include the section like this skim goods ,query goods ,check goods ,etc. Background management is provided to managers. It include increase and delete books information, enquiries books information, set user level,manage the kinds of books and the publishers, enquiries statistics bookselling information.This issue have seven chapters , the first chapter to the third chapter of the system before the design of the investigation. The fourth to sixth chapter on the specific design of the system and the system of testing. Chapter VII of the design of this system are summarized. Key words:online bookstore; JSP ;web;Java目 录摘 要IABSTRACTII第1章 绪 论11.1. 电子商务简介11.2. 设计此网站的现实意义11.3. 开发目标21.4. 开发工具简介21.4.1 JSP简介21.4.2 SQL SERVER 2000 简介3第2章 可行性分析42.1 技术可行性分析42.2 经济可行性分析42.3 其他方面的可行性分析4第3章 需求分析53.1 业务流程53.2 数据流图53.3 数据存储说明6第4章 总体设计74.1 功能描述74.2 数据库概念设计9第5章 详细设计125.1 界面设计125.1.1 前台界面设计125.1.2 后台界面设计165.2数据库概念设计18第6章 测 试21第7章 经验与教训总结24总 结25参考文献26致 谢27附 录28第1章 绪 论1.1. 电子商务简介 Internet的发展,为改变传统商业运作模式提供了一种技术上的可行性方案:利用Internet的技术和协议,建立各种企业内部网(Intranet),企业外部网(Extranet),通过廉价的通讯手段,将买家与卖家、厂商和合作伙伴紧密结合在了一起,消除时间与空间带来的障碍,从而大大的节约了交易成本,扩大了交易范围。而在实际生活中,这种方案已经被广泛运用到了实际商业活动中了,人们将这种交易模式称为:电子商务。 当今比较流行的网上书店国外有“亚马逊()”,国内有“当当()”。它们都是相当优秀的电子商务网站,对其他的网站提供了良好的典范。设计中可以学习参考他们的思想,了解和熟悉整个网站的开发流程及完整的电子商务网站应有的功能和注意事项。 设计和完成一个电子商务网站,将会牵涉到许多技术上的问题,如:动态网页制作技术,后台数据库的设计和管理,通过实际的制作这个网站,可以避免纸上谈兵,在实践中掌握上述技术的使用。1.2. 设计此网站的现实意义 1.开发此网站对于我个人和我的朋友以及所有的大学生都有很重要的现实意义。首先它建立了一个平台,让我能实现一直有的梦想,就是将在大学中的书籍都卖掉,并不是当作费纸,而是作为传播知识的读本。 2.开发此网站从节省能源上来说,可以节省纸张,减少浪费。 3.学习新技术,培养自学和探索能力 目前流行的技术有JSP、ASP、PHP等,结合HTML都能够快速开发网站,要完成毕业设计就要在其中选择一种最合适的技术来进行开发,无论选择某一种技术,都能够学习到最新的开发技术。此外开发的时候一定会遇到疑难问题,这就需要自己寻找资料和开动脑筋。 4.符合教学改革趋势 作为“21世纪的通行证”,计算机正受到越来越多人的关注。而且计算机教育已走出学校的大门,逐渐成为每个人终身学习的内容。事实上,现在IT教育不仅在学校中,在社会上也日益受到重视。许多有识之士认为,信息技术不单是应用广泛的高新技术,而且已成为其他许多学科的基础,并构成人类文化的组成部分,渗透于现代生活的各个方面。 CC2001(Computing Curricula2001)草案要求:计算机专业大学生应在毕业前必须了解计算机文化的发展与特点,具有计算机相关法律和道德意识;掌握多媒体技术和网络技术的软、硬件基础知识和基本操作;了解早期与现代程序设计方法的区别,具备能使用某种语言编写和调试简单程序的能力;了解单机和网络操作环境,具有在人机交互环境中运用常用软件处理日常事务的能力;具有结合专业需要开发计算机应用系统的初步能力和较强的自学能力。而实际上国内的情况和CC2001的要求还差的很远,所以,国内IT教育正在进行改革,争取在十年之内能够普及IT教育。这个项目完全符合国内教学改革趋势。 1.3. 开发目标 遵循软件工程的原理,力争开发出一套高效、安全、可靠、功能适用、易于维护、易于理解、设计合理、界面清晰、编码规范、操作简便的网站,减少操作人员的工作量,全面提高公司的工作效率、管理水平和经济效益,从而实现物流、价值流、信息流的集成,提高竞争能力。 1.4. 开发工具简介 1.4.1 JSP简介 传统的HTML代码中,利用HTML标签的扩展,构成页面,JSP的综合实力是最强的,尤其是在安全性和跨平台性两个方面,比其他的两种技术都要好。此外,JSP技术是基于Java的,要想对他了解更多,就必须了解Java语言的特性。 Java是1990年由Sun公司开发用来适应于消费类电子产品的软件,但是由于商业上的种种原因,这些电子产品没有能够推向市场,Java也差点夭折。1994年,经过Java开发小组的认真研究,决定把改进后的Java用于Internet的WWW开发中,1995年,Sun公司举行了隆重的Java发布会,并推出了测试版,此后Netscape公司宣布将支持Java,同时,Sun公司又联合SGI公司和Macromedia公司联合制定了基于Java的开放式多媒体标准。不久,IBM、 Microsoft、 Oracle、 Novell和Borland等著名公司也相继宣布支持Java。Java成为了当今最流行的网络编程语言。 Java的许多研究者根据Java的作者所著写的Java技术“白皮书”中所解释的Java设计初衷以及取得的成就,整理出Java十一项关键特点。这十一项特点也是比较公认的。Java的初学者可以在很多Java入门教材中找到相似或相近的观点。 这十一项特点主要有: 简单:Java的语言非常简单,省略了C+中许多极易混淆的语法特性。 可移植:Java所采用的虚拟机原理,使它脱离了硬件的束缚达到跨平台应用。 面向对象:Java完全支持面向对象技术的编程结构。 解释型:Java的字节码机制说明了它是一种半编译和半解释型语言。 分布式:Java提供了强大而易用的网络应用。 高性能:Java通过改进的解释器和特殊的CPU可以显著提高字节码的执行效率。 健壮:Java取消了指针这种容易出错的结构,提高了程序的健壮性。 多线程:多线程的优点是具有了更好的交互性和实时行为。 安全:Java的安全机制是现今所有语言中最为成功的。 动态:Java可以不断向库内添加新方法以及新实例变量。 中性结构:Java生成的字节码是一种在不同平台上保持独立格式。当然Java其他的特点也相当有用,我也是第一次接触Java,还没有切身体会。但是它的面向对象的特性和易学性已经给了我足够的选择理由。因此,最后我选择基于Java的JSP技术作为动态网页的开发技术。 1.4.2 SQL SERVER 2000 简介 Microsoft SQL Server 2000是Microsoft公司继SQL Server 6.0和 SQL Server 7.0以后,在新千年推出的友谊改进的新版关系型数据库管理系统,它能使用户快捷地管理数据库和开发应用程序。SQL Server 2000 使用了最先进的数据库结构,具有强大的Web功能,它可以利用高端平台以及最新网络和存储技术,可以为最大的Web站点和企业应用提供优良的扩展性和可靠性,使用户能够在Internet领域快速建立服务系统,为占领市场争得了宝贵的时间。同时,SQL Server 2000还为用户提供了重要的安全性能的增强,为用户的安全提供了可靠的保证。另外, SQL Server 2000在数据库服务器自动管理技术方面处于数据库领域的领先地位,它可以使用户免去繁琐复杂的工作,从而又经历处理重要的问题,使系统在商业战略上占得先机。 今天,Microsoft SQL Server 2000 是在成熟和强大的关系型数据库中最受欢迎、应用最广泛的一个。它完全满足电子商务、关键业务和数据仓库应用程序的需求。由于其优良的性能、可伸缩性、可编程价值,它已成为众多客户关系管理系统(CRM)、商业智能(BI)、企业资源规划(ERP)、以及其他商业应用程序供应商和客户的首选数据库。当今有许多著名网站就构筑在Microsoft SQL Server 2000上,如M、D、B等。虽然较之于Oracle、DB2等数据库管理系统,Microsoft SQL Server 在开放性、可伸缩性、安全性和系统性能方面有一定的差距,但它在易用性和实用性方面的优势,因此选择SQL Server 2000作为系统的后台数据库开发工具。 第2章 可行性分析 可行性研究是以相对短的时间和相对低的成本来确定给定的问题是否有解。在这个阶段,必须就时间、人力、财力、效益、技术等要素来评估是否有足够的资源支持本网站开发的需求。因此要从技术可行性、经济可行性、操作可行性等方面来进行研究。 2.1 技术可行性分析 开发风险:开发时间为十六周,可以在指定时间内完成。 人力资源:该网站由一人完成,有老师做技术指导。 技术能力:该网站是以JSP为前台开发工具,以SQL Server 2000为后台数据库,可以实现这个网站。 物资设备:PC机一台。 2.2 经济可行性分析 网站规模并不很大,开支较少,但需要专业人员进行维护和管理,所以网站建设需要先期投入,但网站的平稳运行将给企业带来潜在效益。对于本网站的经济可行性来说,主要的开发工具的选择,JSP、SQL SERVER 2000都比较简单、实用,价格也比较合理,是比较理想的开发工具。 对于用户来说,合理方便的网站设计布局和即时的响应速度,足可以满足各种用户的不同需求,所以在进行本网站设计时考虑到这些,将每位访问本网站的用户的需求作为开发的根本,建立操作简单、界面友好、使用灵活、实用性强、安全性高的网站。 2.3 其他方面的可行性分析 运行环境可行性:网站可以运行在安装了Tomcat5以上版本和JDK1.5(Java的编译环境,是所有Java开发工具的运行基础)Dreamweaver 8(网页制作工具,可以高效的开发HTML代码)SQL Server 2000的Windows2000/XP平台上。 第3章 需求分析3.1 业务流程本图书电子商务网站的用户分为使用者和管理者两种,使用者只有使用部分功能的权限,而管理者具有实用所有功能的权限。 用户可以使用管理者预先设置好的用户名和密码登陆到本网站,并使用本网站查看最新书籍、热销排行、购买图书等操作。 在登录网站时,网站会把用户所输入的用户名与数据库中的进行检验,并在主页面加载时检查用户权限。进入网站后用户有权限的功能可用,无权限的功能则不可用。 3.2 数据流图数据流图描述系统的逻辑模型,是结构化系统分析的主要工具,它能图形化地显示出系统中数据的使用,表达数据在企业内部信息传送系统内部的逻辑流向以及本系统的逻辑功能和数据的逻辑变换。数据流图(Data Flow Diagram,简称DFD图)是用一些规定的图标和符号来描述数据在系统中的流动和处理情况。数据流图一般采用自上而下逐步求精的结构化表示方法。 其实,软件系统归根到底是一个信息处理系统,其最基本的功能就是接受输入的信息,对输入的信息按照规定的方法归类,处理,存储,转变为所需要的信息,最后通过输出系统向用户输出所需求的信息。其中最核心的部分就是对信息(或者称作数据)的处理,因此不同的数据也就不决定了所需要的不同的处理方法和算法,数据流图也就是以图形的方式将系统中数据传递、转化的过程以直观的方式表达。 本网站的数据流图如下: DFD顶层图响应信息客户管理员网上书店系 统D信息表后台订单信息发货进货单分析结果银行帐号表更新金额信息输入图3-1 DFD顶层3.3 数据存储说明管理员表(管理员用户名,管理员密码)注册用户表(ID,用户名,用户密码,姓名,性别,地址,电话,邮编,邮件,时间)图书类别表(书籍ID,图书类别名)图书信息表(ID,书名,图书类别,作者,出版社,书号,内容介绍,书价,数量登记时间)用户-订单表(ID,订单编号,用户序列号,提交订单时间,交货时间,总金额)订单-图书表(ID,订单序列号,图书序列号,数量)第4章 总体设计总体设计的基本目的是比较抽象概括的方式确定系统如何完成预定的任务,也就是说,应该确定系统的物理配置方案,并且进而确定组成系统的每个程序的结构。 整个系统的功能模块图: 网上书店系统注册用户管理员用户注册订单管理查看订单购物车管理在线购书用户登录用户管理图书管理管理员登录图4-1 系统的功能模块图4.1 功能描述 在线书店系统主要是针对中小型书店,图书管理员将图书信息整理归类发布到网上,用户登录该网站后,首先要注册为会员才能购买图书,提交购书单给图书管理员,并同时将费用通过电汇或邮寄的方式交付到图书管理员处。管理员在收到付款后,发货给购物者,并同时更新网上有关于该订书单的付款状态,从而完成一次交易。只允许系统规定的图书管理员来添加和修改图书信息;图书管理员可以查看该系统的所有注册用户信息,可以修改某一个注册用户的基本信息,也可以删除某个用户;图书管理员可以查看该系统的所有订单,可以删除订单,也可以修改订单的付款状态、发货状态。图4-2 管理员实例图任何一个网络用户都可以注册称为该系统的固定用户,注册时需要填写基本注册信息,还可以修改个人的基本信息。 图4-3 网络用户实例图只有注册用户才能登录此系统,购买图书。购买图书时可以任意选购图书,任意填写购买数量,可以修改已选择图书的购买数量,可以删除已选择的某一本图书,可以取消购买,可以提交购买下达订单确认一次购买成功。图4-4 用户实例图图4-5 购物顺序图购书后的用户可以登录系统查看自己的订单的付款状态和发货状态。图4-6 订单状态图 4.2 数据库概念设计 数据库概念模型设计的关键,在于数据库逻辑结构,其主要特点是: 1反映现实世界,包括实体和实体间的联系,能满足用户对数据处理的需求,实现世界的一个真是模型。 2易于理解,从而可以和不熟悉计算机的用户进行意见交换。 3易于向关系、网状等各种模型转换。 最常用的表示概念性数据模型的方法,是实体联系法。用这种方法表示的概念性模型又称为E-R模型。实体联系E-R图如下: 管理员密码ID用户名姓名性别管理员密码管理员用户名用户地址电话邮编注册时间管理图书信息表书价订单号作者数量书号书名图书类别ID登记时间订单购书ID订单时间序列号交货时间金额是否付款是否发货1n1n1 图4-7 总体E-R图由前面的功能模块设计的可知,此网上书店系统的服务对象有两类,即管理员和注册用户,由于管理员和注册用户对此系统的操作有很大差别,在系统中要分别记录他们的数据信息,因此首先需要如下两个数据实体:管理员数据实体:记录管理员的用户名和密码,这是管理员登录系统时所必需的。注册用户数据实体:包括用户名、密码、真实姓名、性别、联系地址、联系邮编、联系电话、电子邮件等信息。这些信息由用户自己进行维护,管理员可以根据这些信息来了解用户。作为电子书店系统,图书数据自然是最为重要的。图书管理员需要将琳琅满目的图书进行分类整理,这样顾客可以很方便的查找图书,同时也便于管理员管理图书,这就需要如下的两个数据实体:图书类别数据实体:记录该系统中图书的类别信息,主要包括类别名称和编号。图书信息数据实体:记录图书的基本信息,包括图书名、作者、出版社、书号、定价、总数量、图书简介、图书类别。这些数据由管理员进行录入和维护,用户在选购图书时进行浏览。以上的四个实体是最基本的数据实体,对于电子购物网站来说,需要随时记录和更新顾客的购买信息,因此需要如下的两个数据实体:用户订单数据实体:记录所有用户下达的订单的记录,包括用户的身份编号、订单的编号、订单的名称、下达订单的日期、付款状态、发货状态;管理员可以根据实际的状况来修改部分状态信息,用户可以随时查看该订单的状态信息。订单图书数据实体:记录所有订单包含的图书信息,包括订单的编号、图书的编号。第5章 详细设计 详细设计阶段的根本目的是确定应该怎样具体的实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。5.1 界面设计5.1.1 前台界面设计1用户注册页面用户需要注册后才能在此网络书店系统上购书,因此需要设计一个操作简单方便的用户注册页面。用户在注册界面内输入的个人信息要添加到数据库的用户表(My_Users)中,根据这个表的字段信息,可知注册界面中需要输入的用户信息包括:登录用户名、密码、确认密码(以便保证用户两次输入的密码都一样)、真实姓名、性别、联系地址、联系邮编、联系电话和电子邮件。用户注册页面如下图所示。图5-1 注册界面2. 用户登录页面注册用户只有登录到此网络书店系统后,才能正常使用此系统的提供的功能。用户登录系统时需要输入自己的用户名和密码,系统根据数据库的用户表(My_Users)中的记录核实用户输入的登录信息合法后,用户才能登录此系统。图5-2 登录界面登录成功后可以修改自己的信息图5-3 用户修改信息3. 图书分类显示功能:按图书的分类显示相应类别的所有图书的信息,显示信息包括:图书名称、作者、单价、图书简介以及图书对应的币面图片。图书订购功能:在图书显示界面中,客户可以选购图书,并指定选购的数量。图5-4 选购图书4用户在线购物页面用户登录到此网络书店系统后,就可以在线购书了。在线购书时,首先查看有那些图书。根据图书的分类,设计了图书的列表页面,此页面中列出了图书的基本信息:图书名称、作者、图书类别、出版社、单价。在图书列表页面中单击“详细资料”超链接,可以查看图书的详细信息,此页面只是显示数据表My_book中的基本数据。每一本图书还需要提供“购买”的按钮,以便用户能够方便的购买。在图书列表页面中单击“购买”超链接,可以打开图书购买页面,此页面中用户可以输入要购买的图书的数量,单击“购买”按钮,即可将该图书添加到购物车。购买图书页面如图所示。图5-5 在线购物界面5购物车管理界面当用户选购完自己需要的图书后,需要提交购物车结帐。用户首先要查看在购物车里自己已经选购了哪些图书、图书的数量和图书的相关信息。此页面中要实现显示购买图书列表、购买图书的数量,还要能实现删除已经选购的图书、提交购物车和清空购物车的操作。购物车管理页面如图所示。图5-6 购物车界面6用户订单查看用户提交购物车后,系统就自动生成了订单。订单提交给系统管理员进行管理,订单的付款状态和发货状态由管理员根据实际情况进行更新,用户也需要随时查看自己下达的订单的信息。订单查看页面要显示的信息包括:订单的编号(用户的每一次提交购物车就会生成一个订单ID)、提交时间、总金额(一此购物的购物总金额)、付款状态、发货状态。订单对应的数据表为My_Indent。图5-7 订单界面5.1.2 后台界面设计1管理员登录页面根据系统管理功能保密性的需要,管理员要通过自己的登录入口登录系统对系统进行管理和维护。由数据库部分的设计可知,管理员登录的用户名和密码存放在数据表My_BookAdminuser中,在建立该表时填加了一个管理员的记录,用户为admin,密码为admin。管理员用户登录的界面中,包括用户名和密码的输入框,还要包括提交登录的按钮。图5-8 管理员登录界面2图书管理页面管理员登录后,就可以管理图书了。根据功能模块图的设计可知。图书的管理有:增加图书,取得图书列表,察看图书信息,修改图书信息,删除图书。添加图书对应的页面是addbook.jsp。添加图书时需要添加图书的基本信息。图5-9 添加图书界面3订单管理页面对于网络书店来说,需要记录用户购买图书的情况,这就需要记录订单信息。用户每一次购买,都自动生成一个购买订单供管理员查看,因此就需要设计一个管理员管理订单的功能,订单中记录的信息主要涉及到用户-订单数据表My_Indent和订单-图书数据表My_IndentList表中的数据。订单页面应该显示所有用户的所有订单的列表,和数据表的字段对应,应该显示的信息有:订单编号、用户名、下单时间、交货时间、总金额、订货人IP、付款状态、发货状态。管理员在此页面中可以查看每一个订单的图书列表情况,可以删除任何一个订单。图5-10订单管理当管理员需要管理某一个订单时,列表中的“详细情况”链接。此链接的结果要打开这个订单的图书列表信息。此页面和My_Indent数据表对应,显示该订单的所有图书列表,包括字段:图书名称、作者、图书类别、单价、数量,同时为了方便管理,还需要统计该订单的总金额和总数量。4用户管理页面对于一个网络书店系统来说,用户要购买图书时要下订单,因此需要记录下单的用户信息,这些用户的信息需要由系统管理员来进行管理和维护。为此,设计了用户列表的页面。次页面中需要包括如下的信息:用户的ID号、用户名、真实姓名、联系地址、联系电话、Email。这些只是显示了用户的基本信息,还应该提供用户管理的入口,包括修改、删除,还应该可以查看详细资料的查看入口。图5-11用户信息管理5.2数据库概念设计此网上书店系统采用SQLServer 2000数据库管理系统。首先用户需要在SQLServer 2000的企业管理器中建立一个数据库,将其命名为“dbhouse”,然后根据数据库的逻辑结构分析创建以下6张数据表:管理员表(My_BookAdminuser):用于存放管理员的数据记录。注册用户表(My_Users):用于存放注册用户的记录。图书类别表(My_BookClass):用于存放图书记录。图书信息表(My_Book):用于存放初始的图书类别记录。用户-订单表(My_Indent):用户存放用户下达的订单基本信息。订单-图书表(My_IndentList):用于存放订单的图书信息。以上6张数据表的表结构分别如图所示。表5-1 My_BookAdminuser 表结构字段名称字段类型说明AdminUserVarchar(20)管理员用户名AdminPassVarchar(50)管理员密码表5-2 My_User表结构表5-3 My_BookClass表结构表5-4 My_Book表结构表5-4 My_Indent 表结构表5-5 My_IndentList 表结构第6章 测 试用户注册测试测试流程(1)从到达用户注册页面,添加用户信息并提交。注意使用空用例,测试E-mail地址判断、号码判断等内容。(2)到达购物车页面,看注册完毕是否自动登录。(3)退出。从首页重新登录。到达购物车页面,查看用户资料是否正确。测试结果 表 6-1 注册测试表页面全路径测 试 用 例测试结果操 作 流 程/shop/reg.jsp用户名:abcd密码:1234E-mail:abcd性别:女地址:吉林其它省略用户名为空提交一次密码为空提交一次E-mail为空提交一次。不合法E-mail提交一次。用户名,密码,E-mail为空不允许提交虚假的E-mail不允许提交最后注册成功然后去往到达购物车页面/index.jsp用户名:abcd密码:1234登录成功查看用户资料正确然后去往到达购物车页面管理员登录测试测试流程(1)以管理员身份从首页登录,测试后台管理页面的登录功能,以及管理员用户是否建立成功。(2)添加普通操作员www。测试添加操作员功能,测试确认密码功能。(3)退出。以www身份登录,看是否成功。测试结果表6-2 管理员登录测试表页面全路径测 试 用 例测 试 结 果操 作 流 程/shop/login.jsp用户名:admin密码:admin登录成功在地址栏里面直接键入地址后登录/shop/login.jsp用户名:admin密码:www登录失败,提示用户名密码错误/shop/login.jsp用户名:www密码:www登录失败用户购物测试测试流程(1)以普通用户身份从首页登录。(2)选择计算机类然后选择JAVA教程。(3)选择“添加到购物车”按钮,到达购物车页面。(4)修改数量为2。(5)重复以上操作,测试多次购物的结果。测试结果 表6-3 用户购物测试表页面全路径测 试 用 例测试结果操作流程/shop/shoperlist.jsp查看图书是否成功添加修改数量为2,看价钱计算是否正确再次购物,看多款产品价钱计算是否正确删除某一款产品,看是否正确正确成功订单管理测试测试流程(1)用户从购物车页面到收款台,选择付款方式,添加收货人后生成订单。(2)测试取消订单功能。取消后再生成订单。(3)从后台管理程序登录,对订单进行确认。(4)再一次试验取消订单功能。测试结果表6-4 订单管理测试页面全路径测 试 用 例测试结果操作流程/shop/order.jsp分别选择各种结算方式,看是否保存到数据库中成功/shop/order.jsp确认订单是否生成,查看订单的状态,取消订单看是否成功成功/shop/order.jsp修改订单状态为确认成功第7章 经验与教训总结本次项目中,我们用到的主要技术是JSP,在此,就其作一个简单的总结,JSP工作原理:在一个JSP文件第一次被请求时,JSP引擎把该JSP文件转换成为一个servlet。而这个引擎本身也是一个servlet,在JSWDK或WEBLOGIC中,它就是JspServlet。JSP引擎先把该JSP文件转换成一个Java源文件,在转换时如果发现jsp文件有任何语法错误,转换过程将中断,并向服务端和客户端输出出错信息;如果转换成功,JSP引擎用javac把该Java源文件编译成相应的class文件。然后创建一个该SERVLET的实例,该SERVLET的jspInit()方法被执行,jspInit()方法在servlet的生命周期中只被执行一次。然后jspService()方法被调用来处理客户端的请求。对每一个请求,JSP引擎创建一个新的线程来处理该请求。如果有多个客户端同时请求该JSP文件,则JSP引擎会创建多个线程。每个客户端请求对应一个线程。以多线程方式执行可大大降低对系统的资源需求,提高系统的并发量及响应时间.但应该注意多线程的编程限制,由于该servlet始终驻于内存,所以响应是非常快的。 如果.jsp文件被修改了,服务器将根据设置决定是否对该文件重新编译,如果需要重新编译,则将编译结果取代内存中的servlet,并继续上述处理过程。虽然JSP效率很高,但在第一次调用时由于需要转换和编译而有一些轻微的延迟。此外,如果在任何时候如果由于系统资源不足的原因,JSP引擎将以某种不确定的方式将servlet从内存中移去。当这种情况发生时jspDestroy()方法首先被调用, 然后servlet实例便被标记加入"垃圾收集"处理。jspInit()及jspDestory()格式如下:可在jspInit()中进行一些初始化工作,如建立与数据库的连接,或建立网络连接,从配置文件中取一些参数等,在jspDestory()中释放相应的资源。由于我们是第一次做项目,根本没有什么经验,首先就是编码,也没有具体的设计思想,而且编出来的代码错误多多,到头来只是浪费时间。后来我们采用面向