


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于SSH框架的网上书店的设计与实现基于SSH框架的网上书店的设计与实现摘要随着互联网络的发展,网上书店越来越为人们所关注。通过网上书店,人们可以足不出户就选购自己所需的图书。本课程设计为严格遵循软件开发流程,使用MVC模式,采用开源框架Struts、Spring、Hibernate进行开发,后端的数据库采用MySQL,通过JDBC驱动程序和数据库进行无缝连接,应用可以跨平台的Web应用技术JSP开发的网上书店系统。设计的主要目的是了解Web应用程序的这些开源框架技术,熟练使用框架开发的流程。该系统主要由前台信息发布和后台管理维护系统两部分构成,前台实现网上书店的基本功能,包括用户注册登录、图
2、书列表、图书搜索、购物车、订单生成等,后台管理系统则帮助用户对前台进行日常管理和信息发布,即对用户、图书、订单等的管理功能。本文介绍了网上书店系统的功能设计与实现过程,包括需求分析、概要设计、系统详细设计、数据库设计和测试方案等。关键词:网上书店;MVC;Struts;Spring;Hibernate;MySQL;JSP基于SSH框架的网上书店的设计与实现THEAPPLICATIONANDIMPLEMENTATIONOFANENTERPRISEPROCUREMENTSYSTEMWITHGRAYCOMPREHENSINEEVALUATIONALGORITHMWiththedevelopmento
3、fscienceandtechnology,thecomputersystemhasbeenusedmorepopularlyinthedecisionsofenterpriseprocurement.Astandardenterpriseprocurementsystemshouldbeabletoachievethepurchasinggoodsadded,suppliersadded,ordersaddedandotherbasicfunction.Introducinggraycomprehensiveevaluaionalgotithmistoprovidethebestsuppli
4、erswhenchoosingsuppliersfordecision-making.Thispaperstartsfromtheneedsanalysis,focusingonthedesciriptionofwhattheentireenterpriseprocurementsystemneedstoachive.Then,intheoveralldesign,thispapercompletesthesystemmoduleclasssificationandthetop&structureanalysisofdatabase.Thirdly,inthealgorithmdesign,i
5、tdescribesthecoreideaofgraycomprehensiveevaluaionalgotithmindetail,atthesametime,itdesignsthegeneralflowofthisalgorithm.Finally,bydetaileddesignandimplementation,theentiresystemhasbeenfinishedsucceessfully.ThesystemisdevelopedbyJSP.ThedatabaseselectsOracledatabase.Afterdesignanddebugging,thesystemha
6、sbeenabletoachievetheabovefunctionsinitially.Keywords:EnterpriseProcurementManagement;GrayComprehensiveEvaluaionAlgotithm;JSP;Oracle基于SSH框架的网上书店的设计与实现目录1绪论.11.1课题的研究背景.11.2课题的研究意义.11.3国内外发展现状.21.4本论文的主要内容与结构.22相关技术简介与开发环境.42.1Struts介绍.42.2MVC介绍.42.3MySOL简介.62.4Spring介绍.62.5hibernate概述.72.6开发环境.73需求分
7、析.83.1设计目标.83.2可行性分析.83.2.1经济可行性.83.2.2技术可行性.83.2.3操作可行性.93.2.4其他可行性.93.3性能需求.93.4功能需求.103.4.1用户登录注册.103.4.2浏览与搜索图书.103.4.3购物车管理.113.4.4提交订单和订单管理.11基于SSH框架的网上书店的设计与实现3.4.5后台管理.113.5系统需求分析.113.5.1角色分析.113.5.2用例分析.114总体设计.174.1概要设计.174.1.1系统功能模块图.174.1.2系统流程图.204.2数据库设计.214.2.1数据流图.214.2.2数据库概念设计.234.
8、2.3数据库逻辑设计.275详细设计与系统实现.315.1系统首页.316系统测试.426.1软件测试目标.426.2软件测试方法.426.3测试用例.436.4测试总结.457总结.46参考文献.47基于SSH框架的网上书店的设计与实现绪论1.1课题的研究背景电子商务是一种新型的电子方式的商务贸易活动,它与传统的商务活动相比,既有相似之处,又有明显的区别。随着Internet的不断完善和成熟,电子商务也已经成为一种购物的时尚。由于传递速度快,而容易被购买者所接受。网上书店的出现将为购买者提供方便,快捷的购物平台。当前,中国书业正面临着深刻的体制与行业发展模式的双重变革面对未来的市场,和书店都
9、不得不做出应对,在提升管理、减少成本、降低风险的同时,寻求新的业态和渠道的突破。相比之下,由于网上书店具有全面的图书查询信息功能,齐全的图书品种,方便快捷的配送服务,低廉的销售价格,直接准确的数据积累,灵活多样的宣传营销平台,先进的互联网技术,完善的售后服务等优势,可以预言,网上书店将走出内外环境制约的阶段,迎来快速发展的美好前景。1.2课题的研究意义网上书店作为电子商务的一种。网上书店是近年来随着网络技术的发展而产生的一种新型的书店形式。与传统书店相比,网上书店拥有许多的优势。网上书店的建立可以大大减少图书销售中的中间环节,节省大量的人力、物力,并且能够提供更多的书目信息。另外,网上购书的读
10、者不会再受地域的限制,而是遍及世界各地,这也就极大限度地扩大了出版物的发行X围。正是由于这些优势,网上书店才能得以在短时间内迅速发展起来。网上书店的兴起,实际上是Intemet电子商务在图书业发展的必然结果,它使传统的图书销售业发生了根本性的变革,同时也使传统的购书方式发生了根本性的变化。伴随着网络的发展,电子商务的不断完善,我国业越来越强烈地意识到网络带来的巨大商机,各个单位纷纷上马,抢占有利于自身发展的网上阵地。他们利用网络塑造企业形象,推销图书及有关产品,以期达到向国内外众多第1页共47页基于SSH框架的网上书店的设计与实现网络用户宣传自己,提高企业知名度和获取丰厚利润的目的。上网的企业
11、不管是书店还是,几乎都在进行图书的线上销售经营活动,网络销售将成为出版物销售的新模式和新的增长点。1.3国内外发展现状目前,国内外网上书店都很多,如国内的当当和卓越亚马逊,国外的亚马逊。国外的网上书店由于起步早,现在已较为成熟,最具代表性的首推亚马逊网上书店。亚马逊具有高质量的综合书目数据库和方便的图书检索系统,经营的图书达400多万种,如今已成为全球的最大网上书店,控制着美国80%的网上图书销售市场。而国内的网上书店起步晚,与国外有一定的差距。由于服务不完善、查询、分类形式单一,注重图书数量的丰富而忽略图书及相关知识和信息的提供,并且我国有许许多多的中小型书店仍只是采用传统书店的经营模式,而
12、这种模式需要大量的人力、物力,且库存难以满足所有顾客的需求。随着人们日益增长的购书需求,图书数量剧增,有关购书的信息业成倍增长,这就需要有一个好的信息支持平台。网上书店在国际互联网上可以实现的商务功能已经多样化,从最基本的对外沟通展示功能、信息发布功能、在线图书展示功能,到在线洽谈功能、在线交易功能、在线采购功能、在线客户服务功能、在线管理功能等等,几乎以往传统书店功能都可以在互联网上进行电子化的高校运作。同传统书店相比,网上书店具有很大优势,通过网上购物,购买者足不出门,可以省很多时间,价格和便捷这两个优点的存在决定了网上书店发展的良好前景。另外,与传统的书店经营模式相比,网上书店可以节省包
13、括商场租金、书本上架、书本翻阅消耗、员工工资等一笔很大的成本费用,在传统的书店里一般没有折扣的新书、畅销书、精品书,在网上书店就可以以底价格购买到,这在竞争中起到极其重要的作用。1.4本论文的主要内容与结构本文研究电子商务的具体应用系统一网上书店系统,该系统具有用户注册和用户管理、书籍浏览、书籍查询、在线购书和系统管理等功能。采用B-to-C(商业机构第2页共47页基于SSH框架的网上书店的设计与实现对消费者的电子商务)模式的电子商务系统。主要采用超文本连接语言html,JSP,MySQL等技术来实现网上书店系统采用了面向对象的软件开发方法,按照软件工程的基本步骤进行了系统分析、设计和实现。本
14、文讨论的是关于电子商务建设的相关内容,运用的是面向对象的设计方法,文章的设计过程采用的是软件工程的设计思想,因此在文章的结构安排如下:第一章绪论主要是电子商务的介绍及作为电子商务和网上书店的联系。网上书店运行流程和当前状况。大致介绍了网上书店作为电子商务系统的一种形式存在,存在的原因和背景。阐明了研究网上书店系统的意义。第二章主要介绍本系统所要运用到的相关技术与开发环境。第三章主要内容是对软件的需求分析,分析软件的功能性和非功能性需求。分析了系统要达到的目标,要解决的问题。讲述了网上书店系统的主要用户,和针对主要用户实现的功能。第四章主要讲述了对系统的总体设计。通过模块化对系统进行功能设计、架
15、构设计。通过对网上书店的需求分析,对系统进行抽象,进行模块化设计,将系统分成前台和后台。在此基础上进一步细分为更具体的模块。第五章主要讲述了系统详细设计与具体功能的实现。根据前面章节的需求分析,分模块的讲述了实现过程。结合具体界面截图讲述系统的具体实现。第六章讨论了对系统实现功能的测试。通过编写测试用例实现了对系统的功能测试。最终测试结果在论文中也有所体现。第七章是对本文的总结和展望。总结了自己的收获和不足。第3页共47页基于SSH框架的网上书店的设计与实现相关技术简介与开发环境2.1Struts介绍Struts是Apache基金会Jakarta项目组的一个OpenSource项目,它采用MV
16、C模式,能够很好地帮助java开发者利用J2EE开发Web应用。和其他的java架构一样,Struts也是面向对象设计,将MVC模式“分离显示逻辑和业务逻辑能力发挥得淋漓尽致。Struts框架的核心是一个弹性的控制层,基于如JavaServlets,JavaBeans,ResourceBundles与XML等标准技术,以及JakartaCommons的一些类库。Struts有一组相互协作的类(组件)、Servlets以及JSPtaglib组成。基于struts构架的web应用程序基本上符合JSPModel2的设计标准,可以说是一个传统MVC设计模式的一种变化类型。Struts有其自己的控制器(
17、Controller),同时整合了其他的一些技术去实现模型层(Model)和视图层(View)。在模型层,Struts可以很容易的与数据访问技术相结合,JDBC/E,以及其它(第三方类库),如Hibernate/iBATIS,或者ObjectRelationalBridge(对象关系桥)。在视图层,Struts能够与JSP,包括JSTL与JSF,以及Velocity模板,XSLT与其它表示层技术。Struts为每个专业的Web应用程序做背后的支撑,帮助为你的应用创建一个扩展的开发环境。2.2MVC介绍MVC即Model-View-Controller的缩写,是一种常用的设计模式。MVC减弱了业
18、务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。Struts是MVC的一种实现,它将Servlet和JSP标记(属于J2EE规X)用作实现的一部分。Struts继承MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。MVC模式图如图2.1所示。第4页共47页基于SSH框架的网上书店的设计与实现1、接收用户输入3、调用5、输出ViewController2-2、返回处理结果4、参照2-1、调用Model2.1MVC模式图Struts的体系结构包括模型(Model),视图(View)和控制器(Controller)三部分。从MVC角度来看看struts的体系结构(Model2)与
19、工作原理:1模型(Model)Struts的体系结构中,模型分为两个部分:系统的内部状态和可以改变状态的操作(事务逻辑)。内部状态通常由一组ActionFormBean表示。根据设计或应用程序复杂度的不同,这些Bean可以是自包含的并具有持续的状态,或只在需要时才获得数据(从某个数据库)。大型应用程序通常在方法内部封装事务逻辑(操作),这些方法可以被拥有状态信息的bean调用。比如购物车bean,它拥有用户购买商品的信息,可能还有checkout()方法用来检查用户的信用卡,并向仓库发定货信息。小型程序中,操作可能会被内嵌在Action类,它是struts框架中控制器角色的一部分。当逻辑简单时
20、这个方法很适合。建议用户将事务逻辑(要做什么)与Action类所扮演的角色(决定做什么)分开。2视图(View)视图主要由JSP建立,struts包含扩展自定义标签库(TagLib),可以简化创建完全国际化用户界面的过程。目前的标签库包括:BeanTags、HTMLtags、LogicTags、第5页共47页基于SSH框架的网上书店的设计与实现NestedTags以及TemplateTags等。3控制器(Controller)struts中,基本的控制器组件是ActionServlet类中的实例Servlet,实际使用servlet在配置文件中由一组映射(由ActionMapping类进行描述
21、)进行定义。对于业务逻辑的操作则主要由Action、ActionMapping、ActionForward这几个组件协调完成的,其中Action扮演了真正的业务逻辑的实现者,ActionMapping与ActionForward则指定了不同业务逻辑或流程的运行方向。struts-config.xml文件配置控制器。2.3MySOL简介MySQL是最受欢迎的开源SQL数据库管理系统,它由MySQLAB开发、发布和支持。MySQLAB是一家基于MySQL开发人员的商业公司,它是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源公司。MySQL是MySQLAB的注册商标。MySQL是一个
22、快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(massdeployed)的软件中去。MySQL数据库服务器是一个客户/服务器系统,它由多线程SQL服务器组成,支持不同的后端、多个不同的客户程序和库、管理工具和广泛的应用程序接口(APIs)。MySQL也可以是一个嵌入的多线程库,你可以把它连接到你的应用中而得到一个小、快且易于管理的产品。2.4Spring介绍Spring的目标是使现有的JavaEE技术更易用和促进良好的编程习惯。它是一个轻量级的框架,渗透了JavaEE技术的方方面面。它主要作为依赖注入容器和AO
23、P实现存在。还提供了声明事务、对DAO层的支持等简化开发的功能。Spring还可第6页共47页基于SSH框架的网上书店的设计与实现以很方便地与Struts、Hibernate等技术集成,致力于JavaEE应用的各层的解决方案,而不是仅仅专注于某一层的方案,可以说Spring是企业应用开发的“一站式”选择,并贯穿表现层、业务层及持久层。Spring的核心概念是IoC(InversionofControl),IoC的抽象概念是控制反转。它可以完成组件之间的依赖关系注入,使得组件之间的依赖关系达到最小,进而提高组件的重用性。通过Spring提供的IoC容器,我们可以将对象之间的依赖关系交由Sprin
24、g进行控制,避免硬编码所造成的过度程序耦合。有了Spring,用户不必再为单实例模式类、属性文件解析等这些底层的需求编写代码,可以更专注于上层的应用。2.5hibernate概述Hibernate是一个免费的开源Java包,它使得与关系数据库打交道变得十分轻松,就像您的数据库中包含每天使用的普通Java对象一样,同时不必考虑如何把它们从神秘的数据库表中取出(或放回到数据库表中)。2.6开发环境1硬件运行环境处理器:英特尔奔腾处理器2.0GHZ硬盘:40G内存:512M2软件运行环境Windows98、windows2000、windowsXP配备IE60以上浏览器即可。系统基B/S模式,所以客
25、户端只要有一个浏览器即可。无需安装客户端软件就可以运行网上书店系统。第7页共47页基于SSH框架的网上书店的设计与实现需求分析3.1设计目标随着网络技术的发展,越来越多的人喜欢在网上宣传自己的产品,喜欢网上购物。图书产品从其外部特征来看,品种繁多,实体书店或其它图书发行者无法有足够大的店面来展示所有品种;单价不高,在网络信用还存在缺失的环境下能造成的损失较小,读者也乐于尝试在线购买。所以网上书店也在互联网上纷纷出现。就网上书店而言,由于网络已经覆盖全球,信息量大而独具优势。售书的理念也很简单,就是读者可以自己寻找自己喜爱的书为替读者找寻他们想要的书。对于读者来说,可以在网上书店随时随地自由地查
26、询和订购图书,而且摘要和检索也方便许多,同时还减少了购书过程中的支出,这对于读者来说,具有实际意义。因此网上售书必将有长足的发展。本系统的主要目标是实现图书的在线销售,包括管理库房中的图书,以及管理用户的购物车,订单等,从而实现结帐等一系列功能,让用户足不出户就能够在网上书店购买到自己所需的图书。3.2可行性分析可行性分析主要分析系统开发出来之后在各个方面是否划算的问题,一般分为经济、技术、社会、法律以及其他方面的可行性分析,从而确定整个系统的可行性。3.2.1经济可行性本系统可以运行于现在市场上出售的各种个人电脑,系统成本主要集中在系统的开发上。当系统投入运行后,可以实现在网上图书销售功能。
27、所带来的效益远远大于系统软件的开发成本。在经济上是可行的。3.2.2技术可行性本系统严格遵循软件开发流程,使用MVC模式,采用开源框架Struts、Spring、第8页共47页基于SSH框架的网上书店的设计与实现Hibernate进行开发,后端的数据库采用MySQL,通过JDBC驱动程序和数据库进行无缝连接,使用可以使应用跨平台的Web应用技术JSP技术开发,对计算机的硬件配置没有太高要求,在技术上是可行的。3.2.3操作可行性界面设计充分考虑浏览用户的习惯,图书信息浏览、会员注册登录、购书等功能操作方便。而且所有网页设计清新、简洁、合理,不会让用户感到视觉疲劳。可操作性很强。所以在操作上是可
28、行的。3.2.4其他可行性本系统属于开发人员的自主开发,在法律上并未侵犯他人专利,于法律上可行;系统内容健康,无不良信息,在社会道德上可行。3.3性能需求本课题所设计的网上书店系统应该有如下的性能要求:1系统安全性需求系统应保证企业的内部信息对外XX,以保障使用者的权益。系统应该采用权限管理,控制不同用户的使用权限,用户不能越权操作。系统应该确保数据的安全性。同时,用户要求系统具有高度的可靠性,数据的准确性,系统的可恢复性。2可维护性需求客户会在系统使用过程中不断对系统提出新要求,扩展系统功能,这就要求系统的可升级性必须良好,以满足客户长期实用的要求,并且在用户有新要求的时候可以快速扩展功能。
29、3用户操作需求系统设计应该人性化,操作简单方便,达到人机友好的目的。4运行速度需求第9页共47页基于SSH框架的网上书店的设计与实现系统响应时间是衡量系统性能好坏的重要参考。系统要求响应时间短,更新处理迅速,数据转换和传送时间短,后台服务器响应迅速等等。由于系统使用者的特殊性,系统必须即使高效地响应。而且,必须在安全的前提下保证高效的响应性。5界面需求用户界面应该做到清晰简单一目了然,易于操作。3.4功能需求网上书店系统主要是实现前台和后台管理系统两部分。前台实现商品信息的动态展示、购物车管理、客户信息注册登录管理、订单处理等功能模块,后台管理系统主要实现管理员对前台进行日常管理和信息发布,即
30、对用户、图书、订单等的管理功能。经过综合分析,确定了网上书店系统主要包括以下功能。3.4.1用户登录注册会员登录是电子商务应用必须具备的功能之一。漫步者网上书店系统登录页面要求用户输入用户名和密码,在输入用户名和密码之后,系统将验证用户名和密码是否正确。如果验证成功,就使会员处于登录状态,否则,系统显示用户名和密码错误的信息。另外,游客在登录页面中能够进行新会员注册,这时系统要求用户输入用户注册信息,包括用户名、电子、居住地址、邮政编码等内容。3.4.2浏览与搜索图书用户可以通过系统自由浏览各种图书。在系统主页面提供了图书分类,图书列表,通过单击某种图书的,用户可以查看该图书的名称、描述和单价
31、等详细信息以及添加该图书到购物车的通道。用户还可以根据图书分类浏览不同类别的图书,还可以根据图书作者、图书名称等搜索图书。第10页共47页基于SSH框架的网上书店的设计与实现3.4.3购物车管理当用户点击“添加到购物车”按钮时,图书会被自动添加到购物车中。在购物车页面,将列出用户的购物车中的所有图书,并且会列出图书的基本信息。用户也可以修改、删除购物车的内容。3.4.4提交订单和订单管理当用户最终确定所选购的图书后,进入购物车页面,生成订单。生成订单是网上书店系统的最终目的,购物车的所有功能实现都是为最后生成一个客户满意的订单做基础。客户还可以点击“我的订单”,查看订单的状态,对订单进行删除,
32、确认等操作。3.4.5后台管理后台管理包括图书信息管理,图书类别管理,以及会员、订单、公告等信息的管理,管理员可以进入图书分类管理页面添加图书类别,对其进行管理。还可以对图书、会员、公告这些模块进行添加、编辑、删除等操作,对订单进行处理操作等。3.5系统需求分析3.5.1角色分析分析的第一步是定义用例,以描述系统的外部功能需求。用例分析需要与系统的潜在用户进行讨论。根据上述需求,通过分析,网上书店角色分为两大类:用户和系统管理员。3.5.2用例分析在确认角色的基础上,确认用例。用户的用例图如图3.1所示。客户进行的操作包括购买书籍、个人信息维护、查看商品相关信息等。第11页共47页基于SSH框
33、架的网上书店的设计与实现图3.1用户使用系统用例图管理员的用例图如图3.2所示。管理员进行的操作(后台操作)包括用户管理、订单管理、公告管理等等。图3.2管理员使用系统用例图第12页共47页基于SSH框架的网上书店的设计与实现以下是部分重要功能用例分析:1、用户登录用户登录实现为用户和管理员提供身份确认的功能,保证合法用户的应有权益。而且是否登录也将决定用户能否购物。用户登录的前置条件是在登录前,Customer必须完成“注册”。如果用例成功,则用户登录系统,否则,系统状态不变化。用户登录活动图如图3.3所示。图3.3用户登录活动图2、用户浏览书籍用户浏览书籍用例实现了用户浏览书籍,了解书籍所
34、有信息的功能。如果顾客浏览到了感兴趣的图书,通过点击图书可以连接到详细信息的页面。用户浏览书籍用例分析如表3-1所示。表3-1用户浏览书籍用例分析用例名称用户浏览书籍主要参与者系统用户前置条件用户在浏览器中访问系统,浏览器显示系统首页基本路径1、系统显示首页第13页共47页基于SSH框架的网上书店的设计与实现2、用户选择要浏览的书籍:书籍分类浏览:用户点击图书类别,浏览相关类别图书;畅销书籍浏览:系统通过图书销售量显示畅销图书;新书上架:通过图书的上架时间显示新书上架的书籍;特价书籍:通过对书籍的定价与售价的比较显示特价书籍。3、系统返回用户请求的信息4、显示用户请求的书籍详细信息替代流用户点
35、击某个图书分类信息,进入图书的分类浏览页面,该页面显示所有此类图书的列表,用户点击某本图书进入该图书的详细信息显示页面。3、购买书籍购买书籍用例主要是为了方便用户购物,每个用户都有个购物车。在用户购买书籍的过程中,随时可以查看自己购买书籍的数量和所需的开销。本用例开始前用户必须登录到系统中。如果用例成功,顾客可以浏览自己购物车中的信息并决定是购买还是删除。购书活动图如图3.4所示。用户购买书籍用例分析如表3-2所示。图3.4用户购书活动图第14页共47页基于SSH框架的网上书店的设计与实现表3-2用户购买书籍用例分析用例名称用户购买书籍主要参与者系统用户前置条件用户已经注册,并成功登录系统基本
36、路径1、系统显示首页2、用户登录系统3、用户浏览或搜索期望购买的书籍4、添加要购买的书籍到购物车5、编辑要购买书籍的数量,移除不想购买的书籍6、申请结算,提交订单7、生成订单扩展路径1、清空购物车2、用户拒绝付款后置条件系统即时更新订单状态,书籍库存量,销量等信息4、书籍信息管理书籍信息管理实现管理员对书籍的增加、删除、修改、查看、搜索的功能。实现书籍管理前提是管理员登录系统。书籍维护管理用例图如图3.5所示。由于定义表的外键约束,如果新添加的图书分类在系统中没有,则应先添加图书分类,然后再添加具体图书。同样,删除图书分类时,应该现行删除所有该属于该分类的图书,删除完毕后才能删除具体图书。管理
37、员书籍维护用例分析如表3-3所示。第15页共47页基于SSH框架的网上书店的设计与实现图3.5管理员维护图书用例图表3-3管理员书籍维护用例分析用例名称书籍维护管理主要参与者系统管理员前置条件管理员成功登录后台网上书店管理系统1、系统显示管理员后台管理页面2、管理员登录后台管理系统基本路径3、管理员选择图书类别管理菜单,维护书籍类别(查看、搜索、添加、删除、修改)4、管理员选择图书信息管理菜单,维护图书信息(查看、搜索、添加、删除、修改)后置条件系统及时更新数据库数据信息第16页共47页基于SSH框架的网上书店的设计与实现总体设计在本章中,我们需要得出网上书店系统具体的功能模块设计以及数据库的
38、设计。功能模块分析在第一部分叙述,数据库分析在第二部部分详细给出。总体设计的目的是为系统的详细设计与实现做准备。4.1概要设计4.1.1系统功能模块图根据上一章需求分析,可以得出网上书店系统分为前台和后台两大部分。前台部分由用户使用,主要包括用户注册、登录,修改个人信息,图书浏览、搜索,购物车,生成、查询订单等模块。后台部分由管理员使用,主要包括管理员登录、图书类别管理、图书信息管理、用户管理、订单处理、公告管理等模块。根据上述的功能,可以设计出系统的总体功能模块,如图4.1所示。图4.1网上书店系统功能模块示图功能详细说明如下:1、前台(1)用户注册、登录第17页共47页基于SSH框架的网上
39、书店的设计与实现用户进入书店首页,可以在页面顶端点击“注册”按钮。新用户注册进行数据校验成功后成为会员,可以登录到查询、浏览、购买图书。(2)图书浏览在书店首页,可以根据图书类别浏览书籍,还可以浏览畅销书籍、新品上架、特价书籍,当单击某一图书,可进入图书详情页面,查看该图书的详细信息(包括图书名、作者、定价、特价、简介等)。(3)图书搜索可以在书店的搜索框中输入关键字搜索与关键字相关图书。系统将查询结果返回,在页面显示查询所得书籍列表。(4)购买图书在浏览图书时会员可以查看选中图书的详细信息并添加此图书到购物车,用户可以随时查看购物车,选择要购买的图书,确定购买数量后提交订单。(5)查看订单公
40、户可以在我的订单页面查看自己的订单信息以及订单详情,还可以进行付款,删除,确认等操作。(6)维护个人信息用户可以在个人中心页面维护修改个人信息,修改密码。前台功能模块图如图4.2所示。第18页共47页基于SSH框架的网上书店的设计与实现图4.2前台功能模块图2、后台(1)图书信息管理管理员进入后台管理系统,可以在图书信息管理页面查看、搜索书籍信息,以及对书籍信息进行添加、编辑、删除等操作。(2)图书分类管理管理员可以在图书分类管理页面查看、搜索图书类别,以及进行添加根类别、添加子类别、编辑类别信息、删除类别等操作。(3)订单管理管理员可以在订单管理页面查看、搜索订单,以及对订单进行处理、删除等
41、操作。(4)用户信息管理第19页共47页基于SSH框架的网上书店的设计与实现管理员可以在用户信息管理页面查看、搜索用户信息,以及对用户信息进行添加、删除、编辑等管理。(5)公告管理管理员可以在公告管理页面查看、搜索公告,以及对公告进行添加、编辑、删除等操作,优化前台页面显示。4.1.2系统流程图通过分析,我们得到了网上书店业务与管理流程。系统业务流程图如图示。没货查看图书是否有库存是否注册未注册信息系统管理用户注册有货未登录已注册员登录是否购买购买是否登录登录失败登录用户表登陆判断登录失败已登录登陆判断登陆成功登陆成功基本信息维受理订单护处理订单购物车客户留言产品基本订单信息信息获取订单确定货
42、款查看购物车留言信息信息表款到帐货到付款款未到帐4.3所客户留言维护留言信息生成订单取消订单快递公司领单用户退货发货网上书店系统数据库图4.3系统业务流程图第20页共47页基于SSH框架的网上书店的设计与实现4.2数据库设计4.2.1数据流图为了找出关键数据流与主要外部实体,我们需要绘制数据流图。用户数据流图如4.4所示。购书数据流图如图4.5所示。图书管理数据流图如图4.6所示。基础信息管理数据流图如图4.7所示。F2注册成功P1.1F4会员信息D1会员信息簿E1游客F1个人信息F3注册失败游客注册P1.3P1.2冻结账户会员登录F6冻结确认F7登录信息F5冻结账户请求E2会员F8登陆成功F
43、9登录失败图4.4用户数据流图第21页共47页基于SSH框架的网上书店的设计与实现F21催货F22失败D1会员信息簿F4会员信息F8登陆成功P2.1P2.2F19收货单E2会员F7登录信息F10图书信息登陆处理客服洽谈F9登录失败F11成功P2.7F14货品P2.6P2.5P2.4P2.3发货处理订单F13订单信息F11订单F10图书信息信息订单处理付款处理下订单添加购物车F1F16F18F12款项F20商品有无IP库存库存确认收货P2.8F15图书E4仓库E5支付平台F23支付信息F24已付款信息E3后台下订单图4.5购书数据流图D3图书信息簿F27图书信息F27图书信息P3.2图书查询F2
44、5入库单P3.1E4员工入库出库处理F28所需图书信息F26出库单F29所需图书条目E2会员图4.6图书管理数据流图第22页共47页基于SSH框架的网上书店的设计与实现D2管理员信息簿F30管理员信息P4.2D2管理员信息簿修改管理员信D1会员信息息簿F30管理员信息F30管理员信息F4会员信息P4.11F31登陆成功P4.3F30管理员信息E4管理员F4会员信息登录处理F32登录失败修改会员信息F33新信息F34须修改的图书信息P4.4P4.5发布新信息修改图书信息F33新信息F27图书信息D4新消息信息D3图书信息簿簿图4.7基础信息管理数据流图4.2.2数据库概念设计通过上文的总体设计与
45、数据流图,我们可以作出本系统的数据库概念结构设计,即E-R图。在画出E-R图之前,我们需要明确各个数据实体的信息用户信息,包括的数据项有:用户ID、用户名、密码、真实XX、联系、地址、权限;图书信息,包括的数据项有:图书ID、图书名、图书ISBN号、图书封面、作者、出版日期、定价、售价、上架状态、上架时间、图书内容推荐、类别ID、库存量、销量;图书类别信息,包括的数据项有:类别ID、父类ID、类别名、描述、类别节点第23页共47页基于SSH框架的网上书店的设计与实现号、类别等级;订单信息,包括的数据项有:订单ID、用户ID、订单金额、收货人XX、收货地址、联系、支付方式、订单状态、下单时间、处
46、理时间、确认状态;订单详情信息,包括的数据项有:订单详情ID、订单ID、图书ID、购买数量;购物车信息,包括的数据项有:购物车项ID、图书ID、用户ID、图书数量;公告信息,包括的数据项有:公告ID、公告标题、公告内容、发布时间;支付账户信息,包括的数据项有:账户ID、卡号、支付密码、账户余额。系统数据库的总体E-R图如图4.8所示:图4.8网上书店系统的总体E-R图以下是实体E-R图:用户实体E-R图如图4.9所示。图4.9用户实体的属性E-R图第24页共47页基于SSH框架的网上书店的设计与实现图书实体E-R图如图4.10所示。图4.10图书实体的属性E-R图图书类别实体E-R图,如图4.
47、11所示。图4.11图书类别实体的属性E-R图订单实体E-R图如图4.12所示。图4.12订单实体的属性E-R图第25页共47页基于SSH框架的网上书店的设计与实现订单详情实体E-R图如图4.13所示。图4.13订单详情实体的属性E-R图购物车实体E-R图如图4.14所示。图4.14购物车实体的属性E-R图公告实体E-R图,如图4.15所示。图4.15公告实体的属性E-R图支付账户实体E-R图,如图4.16所示。图4.16支付账户实体的属性E-R图第26页共47页基于SSH框架的网上书店的设计与实现4.2.3数据库逻辑设计根据以上得到的网上书店系统的数据流图以及数据E-R图之后,我们可以建立数
48、据库表若干。数据库表的结构设计如下:(1)用户信息表用户信息表(USERINFO)的作用在于存储用户的用户ID、用户名、密码、真实XX、联系、地址、用户权限等。该表结构如表4-1所示。表4-1用户信息表字段名数据类型字段长度主键外键是否允许为空说明IDINT11是否否用户IDUSERNAMEVARCHAR40否否否用户名PASSWORDVARCHAR20否否否密码REALNAMEVARCHAR40否否是真实XXPHONEVARCHAR20否否是联系ADDRESSVARCHAR100否否是地址POWERVARCHAR10否否否用户权限(2)图书信息表图书信息表(BOOKSINFO)用来存放图书的
49、图书ID、图书名、ISBN号、图书封面、作者、出版日期、定价、售价、上架状态、上架时间、内容推荐、类ID、库存量、销量等。该表结构如表4-2所示:4-2图书信息表第27页共47页基于SSH框架的网上书店的设计与实现字段名数据类型字段长主键外键是否允许为空说明度IDINT11是否否图书IDNAMEVARCHAR100否否否图书名ISBNVARCHAR20否否否ISBN号PICTUREVARCHAR500否否否图书封面AUTHORVARCHAR100否否否作者PUBLISHERVARCHAR100否否否PUBDATEDATE否否否出版日期PRICEDOUBLE否否否定价VPRICEDOUBLE否否
50、否售价STATETINYINT否否否上架状态PUTTIMEDATE否否否上架时间DESCRIBETEXT否否否内容推荐CATEGORYIDINT11否是否类别IDSTOCKINT11否否否库存量SALESINT11否否否销量(3)图书类别表图书类别表(CATEGORY)用来存放图书类别的类别ID、父类ID、类别名、描述、类别节点号、类别等级等信息。图书类别表结构如表4-3所示:表4-3图书类别表字段名数据类型字段长度主键外键是否允许为空说明IDINT11是否否类别IDPARENTIDINT11否否否父类IDNAMEVARCHAR50否否否类别名DESCRIBEVARCHAR100否否是描述CN
51、OINT11否否否类别节点号GRADEINT11否否否类别等级(4)订单信息表订单信息表(SALESORDER)用来存放订单的订单ID、用户ID、订单金额、收货人XX、收货地址、联系、支付方式、订单状态、下单时间、处理时间、确认状态等信息。订单信息表如表4-4所示:第28页共47页基于SSH框架的网上书店的设计与实现表4-4订单信息表字段名数据类型字段长度主键外键是否允许为空说明IDINT11是否否订单IDUSERIDINT11否是否用户IDMONEYDOUBLE否否否订单金额SENDNAMEVARCHAR50否否否收货人XXSENDADDRVARCHAR100否否否收货地址SENDPHONE
52、VARCHAR20否否否联系PAYMETHODVARCHAR50否否否支付方式STATEVARCHAR50否否否订单状态ODATEDATE否否否下单时间PDATEDATE否否是处理时间ISSUREVARCHAR50否否否确认状态(5)订单详情表订单详情表(SALESITEM)用来存放订单详情ID、订单ID、图书ID、购买数量等信息。订单详情表结构如表4-5:表4-5订单信息表字段名数据类型字段长度主键外键是否允许为空说明IDINT11是否否订单详情IDORDERIDINT11否是否订单IDBOOKIDINT11否是否图书IDCOUNTINT11否否否购买数量(6)购物车表购物车表(CARTIT
53、EM)用来存放购物车项ID、用户ID、图书ID、图书数量等信息。购物车表结构如表4-6:表4-6购物车表字段名数据类型字段长度主键外键是否允许为空说明IDINT11是否否购物车项IDORDERIDINT11否是否用户IDBOOKIDINT11否是否图书IDCOUNTINT11否否否图书数量第29页共47页基于SSH框架的网上书店的设计与实现(7)公告表公告表(MESSAGE)用来存放公告ID、公告标题、公告内容、发布时间等信息。公告表结构如表4-7:4-7公告表字段名数据类型字段长度主键外键是否允许为空说明IDINT11是否否公告IDORDERIDVARCHAR200否否否公告标题BOOKID
54、VARCHAR500否否否公告内容COUNTDATE否否否发布时间(8)支付账户表支付账户表(ACCOUNT)用来存放账户ID、卡号、支付密码、账户余额等信息。支付账户表结构如表4-8:表4-8支付账户表字段名数据类型字段长度主键外键是否允许为空说明IDINT11是否否账户IDCARDIDVARCHAR40否否否卡号PAYPASSWORDVARCHAR30否否否支付密码BALANCEDOUBLE否否否账户余额第30页共47页基于SSH框架的网上书店的设计与实现详细设计与系统实现5.1系统首页系统首页如图5.1所示图5.1系统首页第31页共47页基于SSH框架的网上书店的设计与实现登录界面如图5
55、.2所示。图5.2登录界面注册界面如图5.3所示。图5.3注册界面第32页共47页基于SSH框架的网上书店的设计与实现购物车页面如图5.4所示。图5.4购物车页面提交订单页面如图5.5所示。图5.5提交订单页面第33页共47页基于SSH框架的网上书店的设计与实现书籍列表页面如图5.6所示。图5.6书籍列表页面书籍详情页面如图5.7所示。图5.7书籍详情页面第34页共47页基于SSH框架的网上书店的设计与实现个人中心页面如图5.8所示。图5.8个人中心页面确认订单页面如图5.9所示。图5.9个人中心页面订单详情页面如图5.10所示。图5.10订单详情页面第35页共47页基于SSH框架的网上书店的
56、设计与实现个人资料页面如图5.11所示。图5.11个人资料页面修改密码页面如图5.12所示。图5.12修改密码页面第36页共47页基于SSH框架的网上书店的设计与实现后台登录页面如图5.13所示。5.13后台登录页面图书类别管理页面如图5.14所示。图5.14图书类别管理页面第37页共47页基于SSH框架的网上书店的设计与实现添加根类别页面如图5.15所示。5.15添加根类别页面添加子类别页面如图5.16所示。5.16添加子类别页面修改类别信息页面如图5.17所示。图5.17修改类别信息页面第38页共47页基于SSH框架的网上书店的设计与实现图书信息管理页面如图5.18所示。5.18图书信息管
57、理页面添加图书信息页面如图5.19所示。图5.19添加图书信息页面第39页共47页基于SSH框架的网上书店的设计与实现修改图书信息页面如图5.20所示。5.20修改图书信息页面订单管理页面如5.21图所示。图5.21订单管理页面第40页共47页基于SSH框架的网上书店的设计与实现处理订单页面如图5.22所示。图5.22处理订单页面公告管理页面如图5.23所示。图5.23公告管理页面第41页共47页基于SSH框架的网上书店的设计与实现系统测试6.1软件测试目标软件测试的目的决定了如何去组织测试。如果测试的目的是为了尽可能多地找出错误,那么测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位
58、置。如果测试目的是为了给最终用户提供具有一定可信度的质量评价,那么测试就应该直接针对在实际应用中会经常用到的假设。软件测试是为了发现错误而执行程序的过程。一个好的测试用例是在于它能发现至今未发现的错误。一个成功的测试是发现了至今未发现的错误的测试。测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的分布特征,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。同时,这种分析也能帮助我们设计出有针对性地检测方法,改善测试的有效性。其次,没有发现错误的测试也是有价值的,完整的测试是评定测试质量的一种方法。详细而严谨的可靠性增长模型可以证明这一点。6.2软件测试方法软件测试是用来发现
59、系统与用户需求不符合的过程。测试方法分为,白盒测试和黑盒测试。白盒测试是对软件过程性细节做出细致的检查。这样的方法是把测试对象看做是一个打开的盒子,它允许测试人员利用程序内部的逻辑结构以及有关的信息,设计或者选择测试用例,对程序所有的逻辑路径进行测试。通过在不同的节点来检查程序的状态,确定实际状态是否与预期达成一致。因此,白盒测试又称为结构测试或者是逻辑测试。白盒测试主要是想对程序模块进行如下检查。1对程序模块的所有独立的执行路径至少测试一遍。2对所有的逻辑判定,取“真或者取“假的两种情况至少能测一遍。3在循环的边界和运行的界限内执行循环体。4测试内部数据结构的有效性,等等。第42页共47页基
60、于SSH框架的网上书店的设计与实现本次系统测试主要是选择黑盒测试,软件的黑盒测试意味着测试要在软件的接口处进行。这样的方法是把测试对象看成一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部属性,只是根据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试或者数据驱动测试,黑盒测试主要是为了发现以下几类错误:1是否有不正确或遗漏的功能2在接口上,输入是否正确的接受,能否输出正确的结果3是否有数据结构错误或外部信息(例如数据文件)访问错误。4性能上是否能够满足要求。5是否有初始化或者终止性错误。6.3测试用例在完成网上书店系统所有功能模块的实现之后,将对系统进行测
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 社区零售行业供应链优化策略
- 2025年度海洋工程专利申请与授权委托代理服务协议
- 二零二五年度商业综合体租户与物业公司管理合同
- 2025年度生态旅游区土地租用五年合同
- 二零二五年度汽车抵押贷款违约责任协议
- 二零二五年度自媒体账号虚拟形象授权合作协议
- 二零二五年短视频演员个人品牌管理合同
- 2025至2030年中国缆式浮球液位开关数据监测研究报告
- 劳务派遣公司协议书(二零二五年度)旅游休闲行业
- 二零二五年度酒店客房预订与家庭度假套餐合同
- 湖南省阳氏宗亲分布村落
- 八年级数学(上册)整式计算题练习100道无答案_新人教版
- 丰田卡罗拉电路图介绍
- 中考语文十大专题总复习资料
- 汽车驾驶员专业竞赛实施方案
- 知乎的SWOT分析(表格)
- 常用家电维修基础知识(课堂PPT)
- 杨氏太极拳37式拳谱
- 卧式设备安装
- 桥梁施工危险源辨识与防控措施
- CFG桩施工记录表范本
评论
0/150
提交评论