基于JAVA的校园网上订餐系统设计_第1页
基于JAVA的校园网上订餐系统设计_第2页
基于JAVA的校园网上订餐系统设计_第3页
基于JAVA的校园网上订餐系统设计_第4页
基于JAVA的校园网上订餐系统设计_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE49分类号_______________密级________________UDC_______________学号毕业设计(论文)论文题目校园网上订餐系统thesisTopicTheCampus

Onlinemealordering

system学生姓名所在院系专业班级导师姓名职称年月日摘要随着信息科学技术的飞速发展,人们逐渐意识到对信息管理软件的运用可以使日常工作更加方便、快捷和高效。通过网上平台进行日常生活工作逐渐成为一种趋势,也越来越具有重要的现实意义。在这种经济社会背景下,本文设计和实现了一个基于JAVAEE的网上订餐服务平台,并进行了详细论述。系统采用eclipse作为开发平台,java为开发语言,以SQLserver为数据库,基于MVC开发模型,使用B/S三层体系结构,实现了菜品管理、订单管理、留言管理等功能。系统符合基于WEB的订餐网站系统的要求,能够帮助切实提高工作效率。论文组织如下:首先阐述了该系统的可能性;其次介绍了相关的开发工具及技术基础;接着对系统的需求进行了分析,并提出了具体的设计方案和数据库模型;然后展现了整个系统的具体实现,各功能模块的实现;最后得出结论。关键词:JAVA;SQLSERVER;订餐

ABSTRACTWiththerapiddevelopmentofinformationscienceandtechnology,peoplegraduallyrealizedthattheuseofinformationmanagementsoftwarecanmakedailyworkmoreconvenient,fastandefficient.PaperdiscussesindetailtheorderingwebsitesystembasedonWEBdevelopmentanddesignprocess.Systemuseseclipseasadevelopmentplatform,javaforthedevelopmentoflanguage,theSQLserverdatabase,toachievethedishesmanagement,ordermanagement,messagemanagement.WEB-basedorderingsystemmeetsthesystemrequirementsWebsitetohelpeffectivelyimproveworkefficiency.Paperisorganizedasfollows:First,thepossibilityofthesystemdescribed;followedintroducedtherelateddevelopmenttoolsandtechnologyinfrastructure;thenthesystemneedsanalysis,andproposedspecificdesignanddatabasemodel;andthenshowsthewholesystemconcreterealizationofthefunctionalmodules;finalconclusion.KEYWORDS:JAVA;SQLserver;Ordering

目录TOC\o"1-3"\h\u9797目录 3191931前言 593012系统开发技术分析 7280992.1JAVA和JAVAEE介绍 7197512.2SQLServer简介 918953系统需求分析 11279243.1系统运行环境 11260373.1.1最低配置 1125673.1.2建议配置 1143223.2可行性分析 1214203.2.1经济可行性分析 1276273.2.2技术能力分析 13318803.2.3运行可行性分析 1329013.3用户需求描述 14147403.3.1功能需求 14194113.3.2性能需求 14305443.4数据字典 15252433.5数据流图 15230804系统概要设计 17325524.1系统的功能结构 1713744.1.1系统总功能结构 1726944.1.2菜品管理功能结构 1734224.1.3订单管理功能结构 182144.1.4公告管理功能结构 18229424.2E-R图 19394.2.1系统属性的实体图及属性 20231964.2.2菜品分类信息实体图及属性 21325114.2.3菜品信息实体图及属性 21237394.2.4订单属性的实体图及属性 22287455详细设计 23181855.1数据库设计 2319185.1.1管理员表 23197655.1.2商品表 23100475.1.3留言表 245697表5.3留言表 2455775.1.4订单表 2496515.2系统设计与实现 24117445.2.1系统登录模块 258455.2.2系统属性管理模块 26143645.2.3基本操作管理模块 26157705.2.4会员管理模块 28142875.2.5菜品管理模块 3014905.2.6订单管理模块 3140525.2.7留言管理模块 32224945.2.8公告管理模块 34181765.2.9网站主界面模块 39306005.2.10用户注册模块 40125695.2.11我的订餐车模块 4051455.2.12我的订单模块 41103595.3系统测试 42117585.3.1白盒测试 4296635.3.2黑盒测试 44301705.3.3功能测试 45118595.3.4集成测试 4523613总结 475998参考文献 4830271致谢 49

1前言随着互联网技术和信息技术的日益成熟,人类社会开始进入信息时代。信息时代的到来给社会生活的各个方面带来了巨大的变化,这些变化同样也影响到了管理。信息技术和信息系统几乎渗透到了每一个的管理活动中,对各个层次均产生了不可忽视的影响。随着Internet的普及,越来越多的企业建立了自己的WWW网站,企业通过网站可以展示产品,发布最新动态信息,与用户进行交流和沟通,与合作伙伴建立联系,以及开展电子商务等。其中网上订餐系统是电子商务网站的一种,随着信息化时代的到来,人们对生活质量的追求不断提高,由于人们工作,学习的关系,常常无法正常吃饭,随着网络的普及,网上订餐业务在中国开始盛行,人们也通过网络订餐的方式获得自己需要的食物。这样既节省了时间,也可以为广大用户提供更多的口味。传统餐饮企业的日常运作还是靠人工管理,从原材料入库到客人点单,再到结账基本上由人工完成记录,这样做不仅耗费人力资源而且容易导致记录丢失或重复等错误,造成管理水平低下。基于Web的订餐系统不仅能提高管理水平给管理者提供一个企业运作的信息平台还能提升企业的形象及增强竞争力。使用该餐饮管理系统能将餐饮企业业务管理和人员管理信息化,使企业从原材料进货到客人消费都由计算机管理并记录,可随时掌握餐厅客人点单,挂账等情况,并能尽可能的降低使用者的劳动强度,同时提高工作质量和效率。我们对于网络的上电子商务开展状况进行了广泛的调研后得出结论,设计开发一个完善的网络订餐系统成为了一个极具光明前景的,可以加以实施的课题。本文的组织工作:第1章:概述课题的研究背景、研究意义及目的,确定论文的研究内容。第2章:概述开发系统所用的主要技术。第3章:介绍系统开发环境,分析系统的总体设计目的,确定系统的设计思想,提出系统的分层体系结构,介绍可行性分析,给出系统总体用例图。第4章:分析系统的详细设计目标,分析系统设计方案,,研究系统的数据库设计。第5章:实现系统具体模块,设计实现功能主界面。第6章:总结全文并给出进一步的研究计划。

2系统开发技术分析2.1JAVA和JAVAEE介绍JAVA语言是SUN公司于1995年推出的一种面向对象的新一代程序。到现在JAVA已经成为主流的开发语言之一,其应用领域带在继续扩大。特点:第一、面向对象,他是更加彻底的面向对象,面向对象的特点使设计集中于对象及其对象之间的联系。JAVA中提供了简单的类机制和动态接口模型,使对复杂系统的设计更加简单、清晰。第二、平台无关性,用JAVA写的应用程序不用修改就可在不同的软硬件平台上运行。第三、可靠性和安全性,由于JAVA主要用于网络应用程序开发,因此对安全性有较高的要求。如果没有安全保证,用户从网络下载程序执行就非常危险。JAVA通过自己的安全机制防止了病毒程序的产生和下载程序对本地系统的威胁破坏。当JAVA字节码进入解释器时,首先必须经过字节码校验器的检查,然后JAVA解释器将决定程序中类的内存布局,随后,类装载器负责把来自网络的类装载到单独的内存区域,避免应用程序之间相互干扰破坏。最后,客户端用户还可以限制从网络装载的类只能访问某些文件系统。上述几种机制结合起来,使得JAVA成为安全的编程语言。JAVA还有分布性、多线程、高效性和动态性等优点。JAVA程序主要基于JavaEE来进行开发。JavaEE(JavaPlatform,EnterpriseEdition)是sun公司推出的企业级应用程序版本。这个版本以前称为J2EE。能够为我们帮助开发和部署可移植、健壮、可伸缩且安全的服务器端Java应用程序。JavaEE是在JavaSE的基础上构建的,它提供Web服务、组件模型、管理和通信API,可以用来实现企业级的面向服务体系结构(service-orientedarchitecture,SOA)和Web2.0应用程序。利用JavaEE来进行开发一般会用到:1、服务器软件:JBOSSJBoss是全世界开发者共同努力的成果,一个基于J2EE的开放源代码的应用服务器。因为JBoss代码遵循LGPL许可,你可以在任何商业应用中免费使用它,而不用支付费用。Jboss支持EJB1.1和EJB2.0的规范,它是一个为管理EJB的容器和服务器。类似于Sun'sJ2SDKEnterpriseEdition(J2EE),Jboss的目标是一个源代码开放的J2EE环境。但是Jboss核心服务仅是提供EJB服务器。JBOSS不包括serverlers/JSPpage的WEB容器,当然可以和Tomcat或Jetty绑定使用。2、系统开发工具:MyEclipseMyEclipse是一个优秀的开发环境,它提供的核心框架和可延伸的外挂程式机制给广大的程序设计师提供了无限的想象和创造空间。目前网上流传相当丰富且全面的开发工具方面的外挂程式,但是MyEclipse已经超越了开发环境的概念,可以想象MyEclipse将成为未来的整合的桌面环境。目前的MyEclipse本身就具有资源管理和外部程式的功能,加上无所不能的外挂程式,将构成一个丰富多彩的工作环境而不仅仅是一个IDE。3、JSP简介JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与JavaServlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。JSP可用一种简单易懂的等式表示为:HTML+Java=JSP。2.2SQLServer简介SQLServer是一个关系数据库管理系统,它最初是由MicrosoftSybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2版本。在WindowsNT推出后,Microsoft与Sybase在SQLServer的开发上就分道扬镳了。Microsoft将SQLServer移植到WindowsNT系统上,专注于开发推广SQLServer的WindowsNT版本;Sybase则较专注于SQLServer在UNIX操作系统上的应用。在本书中介绍的是MicrosoftSQLServer以后简称为SQLServer或MSSQLServer。

SQLServer2000是Microsoft公司推出的SQLServer数据库管理系统的最新版本。该版本继承了SQLServer7.0版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,可跨越从运行MicrosoftWindows98的膝上型电脑到运行MicrosoftWindows2000的大型多处理器的服务器等多种平台使用。SQLServer2000的特性Microsoft®SQLServer™2000的特性包括:(1).Internet集成。SQLServer2000数据库引擎提供完整的XML支持。它还具有构成最大的Web站点的数据存储组件所需的可伸缩性、可用性和安全功能。SQLServer2000程序设计模型与WindowsDNA构架集成,用以开发Web应用程序,并且SQLServer2000支持EnglishQuery和Microsoft搜索服务等功能,在Web应用程序中包含了用户友好的查询和强大的搜索功能。(2).可伸缩性和可用性。同一个数据库引擎可以在不同的平台上使用,从运行MicrosoftWindows®98的便携式电脑,到运行MicrosoftWindows2000数据中心版的大型多处理器服务器。SQLServer2000企业版支持联合服务器、索引视图和大型内存支持等功能,使其得以升级到最大Web站点所需的性能级别。(3).企业级数据库功能。SQLServer2000关系数据库引擎支持当今苛刻的数据处理环境所需的功能。数据库引擎充分保护数据完整性,同时将管理上千个并发修改数据库的用户的开销减到最小。SQLServer2000分布式查询使您得以引用来自不同数据源的数据,就好象这些数据是SQLServer2000数据库的一部分,同时分布式事务支持充分保护任何分布式数据更新的完整性。复制同样使您得以维护多个数据复本,同时确保单独的数据复本保持同步。可将一组数据复制到多个移动的脱接用户,使这些用户自主地工作,然后将他们所做的修改合并回发布服务器。(4).易于安装、部署和使用。SQLServer2000中包括一系列管理和开发工具,这些工具可改进在多个站点上安装、部署、管理和使用SQLServer的过程。SQLServer2000还支持基于标准的、与WindowsDNA集成的程序设计模型,使SQLServer数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝部分。这些功能使您得以快速交付SQLServer应用程序,使客户只需最少的安装和管理开销即可实现这些应用程序。

3系统需求分析3.1系统运行环境3.1.1最低配置服务器端:1)硬件需求:处理器IntelPentiumIII内存128M硬盘40G2)软件需求:Windows98MicrosoftInternetExplorer4.01JAVASQLSERVER数据库客户端:1)硬件需求:处理器Intel奔腾133或相当的处理器内存64M硬盘10G2)软件需求:Windows98MicrosoftInternetExplorer4.013.1.2建议配置服务器端:1)硬件需求:处理器IntelPentiumIV2.8G内存256M硬盘80G2)软件需求:MicrosoftWindows2000/XP/windows7JAVASQLSERVER数据库客户端:1)硬件需求:处理器IntelPentiumIV1.8或相当的处理器内存128M硬盘20G软件需求:Windows2000/XP/windows7,MicrosoftInternetExplorer7.03.2可行性分析在实施一个项目之前,首先要对将要实施的项目进行可行性分析,确定项目是否值得进行。并不是所有的问题都有简单明显的解决办法,事实上,许多问题不可能在预定的系统规模之内解决。如果问题没有可行解的话,那么花费在这项工程上的任何时间、资源、人力和经费都是浪费的。可行性分析的目的就是用最小的代价在尽可能短的时间内确定问题能否解决。可行性研究的目的不是解决问题,而是确定问题是否值得去解。如果是正确的就加以肯定。可行性分析的实现,不能靠主观猜想,只能客观分析达到这个目的,所以就必须分析几种方法解决可能的弊端,从而判断原定的系统目标和规模是否实现,系统完成后所能带来的价值是否大于开发这个系统的投资价值。因此,可行性研究实质上是要进行一次大大的压缩简化了系统分析和设计的过程。我们应该给出系统的逻辑模型,然后从系统逻辑模型出发,寻找可供选择的解法,研究每一种解法的可行性。一般说来,应从技术可行性、经济可行性、操作可行性等方面进行研究:3.2.1经济可行性分析新系统的经济可行性分析的含义是,估计新系统开发和运行所需的费用,以及新系统的效益,将投资和效益进行比较,说明在经济上是合算的。本系统投资低,只需配置一台稍好的电脑及相关的应用软件,此外本系统能够提高数据处理的及时性和准确性;降低了管理人员的劳动强度,提高了劳动效率;使用信息更加方便,从而使决策更及时、准确;取得了其他经济和社会效益。本环节通过分析新系统的成本效益,其中包括估计项目开发的成本,开发费用和今后的运行、维护费用以及新系统将获得的效益,估算开发成本是否高于项目预期的全部经费。下面具体列出了成本和效益的分析:(1)支出现在电脑的应用已经得到了普及是基础的信息化设施,目前使用计算机进行软件开发,网络环境和基础设施能满足本系统的实施要求,所以无须另外的资金投入。其它一次性支出:由于本系统的开发是作为课程实践来进行的,无须资金投入,而且本系统所用到的软件成本投入也不高。因此软件设计和开发费可以承受。经常性支出:系统运行后的日常维护费用少。仅需简单的管理中心,该中心的工作人员可以负责本系统的维护工作。(2)效益本系统的效益可以从经济效益和社会效益两方面考虑。其社会效益包括系统投入运行后可以使管理实现科学化、规范化,增强用户对知识信息的管理能力,从而提高工作效率,从长远来看,也是信息化的必经之路。由此可见系统的建设还是非常有发展前景的。3.2.2技术能力分析根据本系统的功能需求,采用JAVA与开源的SQLserver数据库引擎进行开发。JAVA是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到JAVA的Web应用中。JAVA同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),JAVA,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向JAVA。因此在技术层面上,是完全可行的。3.2.3运行可行性分析本系统的客户端采用的是图形界面方式,由于业务人员日常所使用的操作系统都是Windows系统,所以经过简单的培训就可以胜任新系统的操作工作。新系统的目标就是帮助用户实现资料的管理,并且新系统的运行不会对组织机构和管理方式产生大的影响,所以不会受到任何阻碍。系统的设计上需要注重安全性和用户操作的流畅性。因此要在对用户的管理和资格审核环节做出限定,只有经过审核确认的用户才有权使用,而且需要对管理员进行不同的权限分配。3.3用户需求描述以下主要对用户的功能需求和性能需求进行描述。3.3.1功能需求网上订餐服务平台的功能需求包括以下几个模块:1、会员管理会员注册、登录及对会员信息进行管理维护。2、菜品类别管理菜品类别的增加、删除等。3、菜品管理包括菜品添加、菜品删除、菜品查询。4、订单管理包括订单明细查询、订单受理、订单删除。5、留言管理在线留言及留言删除等。6、公告管理包括发布公告、公告查询、公告删除。3.3.2性能需求该系统应该能够提供基本的数据管理,采购流程管理以及信息的浏览查询,使用起来应该可靠,安全,操作简单,界面友好美观。系统运行稳定,更新处理和响应时间快。3.4数据字典数据词典,既用于描述数据流和数据存储的详细逻辑内容,也可用于描述外部项和处理逻辑的某些数据特性。数据词典把数据的最小组成单位看作数据元素,若干个数据元素组成数据结构。它通过对数据元素和数据结构的定义,来描述数据流和数据存储的逻辑内容。它相当于字典的作用,当用户或软件人员想了解某一数据的含义时,查查字典就可以了。3.5数据流图数据流程图是结构化系统分析的工具。它既可以表达数据在系统内部的逻辑流向及存储,又可以表达系统的逻辑功能和数据的逻辑变换。数据流程图既能表达现行人工系统的数据流程和逻辑处理功能,也能表达自动化系统的数据流程和逻辑处理功能。图3-1:系统主要数据流图

4系统概要设计4.1系统的功能结构4.1.1系统总功能结构系统的后台管理功能主要体现在以下几个模块,可对会员、菜品、订单、留言、公告等信息进行集中管理维护。具体见下图:图4-1:系统总功能结构图4.1.2菜品管理功能结构菜品管理包括菜品的添加、删除及查询。见下图:图4-2:菜品管理结构图4.1.3订单管理功能结构针对订单的功能细化图如下:图4-3:订单管理结构图4.1.4公告管理功能结构针对公告的功能细化图如下:图4-4:公告管理结构图4.2E-R图E-R图也即实体-联系图(EntityRelationshipDiagram),提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。构成E-R图的基本要素是实体型、属性和联系,其表示方法为:·实体型(Entity):具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体;在E-R图中用矩形表示,矩形框内写明实体名;比如学生张三丰、学生李寻欢都是实体。如果是弱实体的话,在矩形外面再套实线矩形。·属性(Attribute):实体所具有的某一特性,一个实体可由若干个属性来刻画。在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。如果是多值属性的话,再椭圆形外面再套实线椭圆。如果是派生属性则用虚线椭圆表示。·联系(Relationship):联系也称关系,信息世界中反映实体内部或实体之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。在E-R图中用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)。以下是该系统的总E-R图:图4-5系统总E-R图4.2.1系统属性的实体图及属性图4-6系统属性的实体图及属性4.2.2菜品分类信息实体图及属性图4-7菜品分类信息实体图及属性4.2.3菜品信息实体图及属性图4-8菜品信息实体图及属性4.2.4订单属性的实体图及属性图4-9订单属性的实体图及属性5详细设计5.1数据库设计在建立数据模型后进行数据库的设计,是构建一个信息系统的基础。数据表是数据库中一个非常重要的对象,根据系统功能设计的要求以及功能模块的划分,对于系统信息数据库,可以列出以下数据项和数据结构:5.1.1管理员表字段名称类型注释userIdInt(4)iduserNamevarchar(50)登陆名userPwvarchar(50)登陆密码表5.1管理员表5.1.2商品表字段名称类型注释goods_idInt(4)idgoods_namevarchar(50)名称goods_miaoshuvarchar(5000)描述goods_picvarchar(50)图片goods_yansevarchar(50)颜色goods_shichangjiaInt(4)市场价goods_tejiaInt(4)特价goods_isnottejiavarchar(50)不是特价goods_isnottuijianvarchar(50)推荐goods_catelog_idInt(4)goods_kucunInt(4)库存goods_Delvarchar(50)是否删除表5.2商品表5.1.3留言表字段名称类型注释liuyan_idInt(4)idliuyan_titlevarchar(50)文字标题liuyan_contentvarchar(5000)内容liuyan_datevarchar(50)时间liuyan_uservarchar(50)留言人表5.3留言表5.1.4订单表字段名称类型注释order_idInt(4)idorder_bianhaovarchar(50)编号order_datevarchar(50)时间order_zhuangtaivarchar(50)状态order_songhuodizhivarchar(50)送货地址order_fukuangfangshivarchar(50)付款方式order_jineInt(4)order_user_idInt(4)订单用户表5.4订单表5.2系统设计与实现以下主要对系统登录模块、后台管理及网站前台模块进行描述。后台管理模块包括系统属性管理、基本操作管理、会员管理、菜品管理、订单管理、留言管理、公告管理;前台模块包括网站主界面、菜品分类、用户注册、我的订餐车、我的订单等。5.2.1系统登录模块1.登录模块的IPO图功能:本模块主要用于对用户身份进行鉴别。用户通过表单提供用户名、密码信息,系统根据用户提供的登录信息对用户进行身份查询鉴别。如果身份合法,则将用户导向系统的主页面并记录用户的相关信息,留待以后的系统页面使用。输入:用户名、密码。处理:(1)输入用户的登录信息。在页面提供的表单出输入用户的用户名、密码信息和验证码,点击“登录”按钮提交表单信息到身份验证页面。或点击“重填”按钮,重新输入。(3)用户身份进行验证。连接数据库,打开用户数据表users,检验用户登录信息。以输入数据“用户名”为查询条件创建数据集查看输入用户名是否存在。如果存在,继续检验输入的密码是否正确。密码和用户名都正确,则进入办公管理系统主页面如果用户名不存在或密码不正确或验证码不正确,则给出登录失败的提示框,并返回首页重新登录。图5-1系统登录面5.2.2系统属性管理模块从下图可以看出,管理员可以对系统属性进行查看管理,从该界面可以看出包括查询当前系统的操作版本,操作类型,用户目录,JDK版本总内存等基本属性:图5-2系统属性界面5.2.3基本操作管理模块从下图可以看出,管理员可以对基本操作进行管理,主要包括两个方面的管理,第一个是修改密码的管理,管理员可以重新设定登录密码。第二个是管理员维护管理,可以添加和删除新的管理员信息:图5-3修改密码管理界面关键代码如下:publicclassTAdminimplementsjava.io.Serializable{ //Fields privateIntegeruserId; privateStringuserName; privateStringuserPw; //Constructors /**defaultconstructor*/ publicTAdmin(){ } /**fullconstructor*/ publicTAdmin(StringuserName,StringuserPw){ this.userName=userName; this.userPw=userPw; } //Propertyaccessors publicStringgetUserName(){ returnthis.userName; } publicvoidsetUserName(StringuserName){ this.userName=userName; } publicStringgetUserPw(){ returnthis.userPw; } publicvoidsetUserPw(StringuserPw){ this.userPw=userPw; } publicIntegergetUserId() { returnuserId; } publicvoidsetUserId(IntegeruserId) { this.userId=userId; }}5.2.4会员管理模块从下图可以看出,管理员可以对会员信息管理,从该界面可以看出包括查询会员的用户名,密码,真是姓名,住址,性别,联系方式,email等基本属性,还可以进行删除会员信息操作:图5-4会员管理界面关键代码如下:/**fullconstructor*/ publicTUser(StringuserName,StringuserPw,intuserType, StringuserRealname,StringuserAddress,StringuserSex, StringuserTel,StringuserEmail,StringuserQq,StringuserMan, StringuserAge,StringuserBirthday,StringuserXueli, StringuserOne1,StringuserOne2,StringuserOne3,StringuserOne4, StringuserOne5,IntegeruserOne6,IntegeruserOne7, IntegeruserOne8,DateuserOne9,DateuserOne10,LonguserOne11, LonguserOne12) { this.userName=userName; this.userPw=userPw; this.userType=userType; this.userRealname=userRealname; this.userAddress=userAddress; this.userSex=userSex; this.userTel=userTel; this.userEmail=userEmail; this.userQq=userQq; this.userMan=userMan; this.userAge=userAge; this.userBirthday=userBirthday; this.userXueli=userXueli; //5.2.5菜品管理模块从下图可以看出,管理员可以对菜品信息管理,从该界面可以看出包括添加,编辑,删除菜品信息,可以对菜品的编号,菜品名称,菜品分类,价格,图片,适合人群等具体属性信息操作,还可以设定特价菜:图5-5菜品管理界面图5-6菜品编辑界面5.2.6订单管理模块从下图可以看出,管理员可以对订单管理,从该界面可以看出包括查询订单明细,受理订单,删除订单,可以对订单的订单编号,用户ID,金额,下单日期等具体属性信息查询操作,后可受理或删除订单:图5-7订单管理界面图5-8受理订单界面5.2.7留言管理模块从下图可以看出,管理员可以对留言信息管理,从该界面可以看出包括查询、删除留言,可以对留言的留言人,标题,内容,留言时间等具体属性进行操作:图5-9留言管理界面关键代码如下:publicclassTLiuyanimplementsjava.io.Serializable{ //Fields privateIntegerliuyanId; privateStringliuyanTitle; privateStringliuyanContent; privateStringliuyanDate; privateStringliuyanUser; //Constructors /**defaultconstructor*/ publicTLiuyan() { } /**fullconstructor*/ publicTLiuyan(StringliuyanTitle,StringliuyanContent) { this.liuyanTitle=liuyanTitle; this.liuyanContent=liuyanContent; } //Propertyaccessors publicIntegergetLiuyanId() { returnthis.liuyanId; } publicvoidsetLiuyanId(IntegerliuyanId) { this.liuyanId=liuyanId; } publicStringgetLiuyanTitle() { returnthis.liuyanTitle; } publicStringgetLiuyanUser() { returnliuyanUser; } publicvoidsetLiuyanUser(StringliuyanUser) { this.liuyanUser=liuyanUser; } publicStringgetLiuyanDate() { returnliuyanDate; } publicvoidsetLiuyanDate(StringliuyanDate) { this.liuyanDate=liuyanDate; } publicvoidsetLiuyanTitle(StringliuyanTitle) { this.liuyanTitle=liuyanTitle; } publicStringgetLiuyanContent() { returnthis.liuyanContent; } publicvoidsetLiuyanContent(StringliuyanContent) { this.liuyanContent=liuyanContent; }}5.2.8公告管理模块从下图可以看出,管理员可以对公告信息管理,从该界面可以看出包括添加、查询、删除公告,可以对公告的标题,发布时间,内容等具体属性进行操作:图5-10公告管理界面关键代码如下:publicclassTGonggaoimplementsjava.io.Serializable{ //Fields privateIntegergonggaoId; privateStringgonggaoTitle; privateStringgonggaoContent; privateStringgonggaoData; privateStringgonggaoFabuzhe; privateStringgonggaoDel; privateStringgonggaoOne1; privateStringgonggaoOne2; privateStringgonggaoOne3; privateStringgonggaoOne4; privateDategonggaoOne5; privateDategonggaoOne6; privateIntegergonggaoOne7; privateIntegergonggaoOne8; //Constructors /**defaultconstructor*/ publicTGonggao() { } /**fullconstructor*/ publicTGonggao(StringgonggaoTitle,StringgonggaoContent, DategonggaoData,StringgonggaoFabuzhe,StringgonggaoOne1, StringgonggaoOne2,StringgonggaoOne3,StringgonggaoOne4, DategonggaoOne5,DategonggaoOne6,IntegergonggaoOne7, IntegergonggaoOne8) { this.gonggaoTitle=gonggaoTitle; this.gonggaoContent=gonggaoContent; this.gonggaoFabuzhe=gonggaoFabuzhe; this.gonggaoOne1=gonggaoOne1; this.gonggaoOne2=gonggaoOne2; this.gonggaoOne3=gonggaoOne3; this.gonggaoOne4=gonggaoOne4; this.gonggaoOne5=gonggaoOne5; this.gonggaoOne6=gonggaoOne6; this.gonggaoOne7=gonggaoOne7; this.gonggaoOne8=gonggaoOne8; } //Propertyaccessors publicIntegergetGonggaoId() { returnthis.gonggaoId; } publicvoidsetGonggaoId(IntegergonggaoId) { this.gonggaoId=gonggaoId; } publicStringgetGonggaoTitle() { returnthis.gonggaoTitle; } publicvoidsetGonggaoTitle(StringgonggaoTitle) { this.gonggaoTitle=gonggaoTitle; } publicStringgetGonggaoContent() { returnthis.gonggaoContent; } publicvoidsetGonggaoContent(StringgonggaoContent) { this.gonggaoContent=gonggaoContent; } publicStringgetGonggaoData() { returngonggaoData; } publicvoidsetGonggaoData(StringgonggaoData) { this.gonggaoData=gonggaoData; } publicStringgetGonggaoFabuzhe() { returnthis.gonggaoFabuzhe; } publicvoidsetGonggaoFabuzhe(StringgonggaoFabuzhe) { this.gonggaoFabuzhe=gonggaoFabuzhe; } publicStringgetGonggaoOne1() { returnthis.gonggaoOne1; } publicvoidsetGonggaoOne1(StringgonggaoOne1) { this.gonggaoOne1=gonggaoOne1; } publicStringgetGonggaoOne2() { returnthis.gonggaoOne2; } publicvoidsetGonggaoOne2(StringgonggaoOne2) { this.gonggaoOne2=gonggaoOne2; } publicStringgetGonggaoOne3() { returnthis.gonggaoOne3; } publicvoidsetGonggaoOne3(StringgonggaoOne3) { this.gonggaoOne3=gonggaoOne3; } publicStringgetGonggaoOne4() { returnthis.gonggaoOne4; } publicvoidsetGonggaoOne4(StringgonggaoOne4) { this.gonggaoOne4=gonggaoOne4; } publicDategetGonggaoOne5() { returnthis.gonggaoOne5; } publicvoidsetGonggaoOne5(DategonggaoOne5) { this.gonggaoOne5=gonggaoOne5; } publicDategetGonggaoOne6() { returnthis.gonggaoOne6; } publicvoidsetGonggaoOne6(DategonggaoOne6) { this.gonggaoOne6=gonggaoOne6; } publicIntegergetGonggaoOne7() { returnthis.gonggaoOne7; } publicvoidsetGonggaoOne7(IntegergonggaoOne7) { this.gonggaoOne7=gonggaoOne7; } publicIntegergetGonggaoOne8() { returnthis.gonggaoOne8; } publicvoidsetGonggaoOne8(IntegergonggaoOne8) { this.gonggaoOne8=gonggaoOne8; } publicStringgetGonggaoDel() { returngonggaoDel; } publicvoidsetGonggaoDel(StringgonggaoDel) { this.gonggaoDel=gonggaoDel; }}5.2.9网站主界面模块从下图可以看出,网站的主界面,包括用户登录,菜品分类,我的信息,我的购物车,我的订单,留言板:图5-11商品管理界面5.2.10用户注册模块从下图可以看出,用户注册界面,注册成功后可以享受会员权利:图5-12用户注册界面5.2.11我的订餐车模块从下图可以看出,用户进入订餐车模块,可以查询已经订餐菜单,可以清空订餐车,继续订餐,或者确认订单去付款:图5-13订餐车界面5.2.12我的订单模块从下图可以看出,查询我的订单信息详细界面:图5-14我的订单界面5.3系统测试5.3.1白盒测试白盒测试是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能。本系统的程序较为复杂,进行穷尽测试是不现实的。基本路径测试方法就可以较好的解决这类问题,其主要思想是根据软件详细设计的过程性描述或源代码中的控制流程求出程序的环形复杂性度量,然后用此度量确定程序的基本路径集合,并由此导出一组测试用例来覆盖该集合中的每一个独立的路径,从而可以保证每个语句至少执行一次。以订餐模块的检测过程为例子说明白盒测试过程,根据详细设计和代码导出如图5.3.1所示检测添加商品过程的流程图:选择页面选择页面选择菜肴显示菜肴信息加入购物车继续购物?查看购物车形成订单删除修改图5-15检测添加商品过程的流程图然后根据过程流程图画出订餐的过程流图5.3.2所示:图5-16订餐的过程流图确定基本路径集合,可以确定几条独立的路径:路径1:1-2-3-4-5-10路径2:1-2-3-4-5-6-9-10路径3:1-2-3-4-5-6-7-9-10路径4:1-2-3-4-5-6-8-9-10为每条路径设计测试用例,使程序沿着该路径至少执行一次。1)路径1的测试用例:添加多个商品。期望结果:购物车中增加相应商品。2)路径2的测试用例:选择商品后生成订单。期望结果:生成订单成功3)路径3的测试用例:信息存在,修改成功。期望结果:修改成功,提示修改成功。4)路径4的测试用例:信息存在,删除成功期望结果:删除成功,提示删除成功。5.3.2黑盒测试黑盒测试也称为功能测试,它着眼于程序的外部特征,而不考虑程序的内部逻辑结构。测试者把被测程序看成一个黑盒,不用关心程序的内部结构。黑盒测试是在程序接口处进行测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据产生正确的输出信息,并且保持外部信息的完整性。

黑盒测试主要采用的技术有:等价分类法、边沿值分析法、错误推测法和因果图等技术。在黑盒测试过程中因为假设系统的程序是不可见的,测试过程主要在系统的外部进行,如输入和接口部分等。黑盒子测试的过程:1.划分等价类并编号,如表5.3.1所示:等价类有效等价值无效等价值用户名eq\o\ac(○,1)一到二十长度的字符串eq\o\ac(○,2)空字符eq\o\ac(○,3)超过二十长度的字符串密码eq\o\ac(○,4)一到二十长度的字串eq\o\ac(○,5)空字符eq\o\ac(○,6)超过二十长度的字符串表5.5等价类划分2.设计测试用例,以便覆盖所有有效等价类。测试数据用户名为“chenlin”密码为“fastkk”,测试数据有效,覆盖的有效等价类eq\o\ac(○,1)、eq\o\ac(○,4)。3.为每

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论