计算机毕业设计网上外卖商城hsgAHA论文_第1页
计算机毕业设计网上外卖商城hsgAHA论文_第2页
计算机毕业设计网上外卖商城hsgAHA论文_第3页
计算机毕业设计网上外卖商城hsgAHA论文_第4页
计算机毕业设计网上外卖商城hsgAHA论文_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

摘要随着Internet的使用越来越广泛,在传统的商业模式中,对于菜品等商品,人们习惯于到各种餐馆购买。然而在快节奏的新时代中,人们不一定能为订餐腾出时间,更不会耐心挑选自己想要的菜品。所以设计一个网上外卖商城,既是迎合电子商务的大潮流,也是传统餐饮行业的一个突破口,可以给传统菜品行业带来转变和机遇。本系统主要是提供给用户一个订餐的平台,通过价格优势吸引众多消费者来购买,实现正常运营。本文主要是采用Java语言、SSM框架、Mysql数据库、Tomcat服务器作为开发平台,系统采用B/S结构进行开发,完成一个网上外卖商城。目标是实现一个以销售为中心的计算机系统,构建用户信息与账号,账号与订单信息有机结合的业务系统。关键词:SSM框架;销售系统;Mysql数据库ABSTRACTWiththeuseoftheInternetmoreandmorewidely,inthetraditionalbusinessmodel,fordishesandothergoods,peopleareusedtoavarietyofrestaurantstobuy.However,inthefast-pacednewera,peoplearenotnecessarilyabletomaketimefororderingfood,noraretheypatienttochoosethedishestheywant.Therefore,thedesignofanonlinetake-outmallisnotonlytomeetthetrendofe-commerce,butalsoabreakthroughinthetraditionalcateringindustry,whichcanbringchangesandopportunitiestothetraditionalfoodindustry.Thesystemismainlytoprovideuserswithaplatformtoorderfood,throughthepriceadvantagetoattractmanyconsumerstobuy,toachievenormaloperation.ThispapermainlyUSESJavalanguage,SSMframework,Mysqldatabase,Tomcatserverasthedevelopmentplatform,thesystemUSESB/Sstructurefordevelopment,tocompleteanonlinetake-outmall.Thegoalistorealizeasales-centeredcomputersystem,andbuildabusinesssystemthatcombinesuserinformationandaccountinformation,andaccountinformationandorderinformationorganically.Keywords:SSMframework;Salessystem;TheMysqldatabase目录摘要 IABSTRACT II第1章 绪论 11.1研究背景 11.2研究意义 11.3系统目标 11.4本文的结构 2第2章 关键技术介绍 32.1开发环境介绍 32.2统一建模语言 32.3JAVAEE技术 32.3.1JSP技术 32.3.2JSP内置对象 32.3.3JDK的安装和配置 42.3.4Tomcat简介 42.4Mysql简介 4第3章 系统分析 53.1可行性分析 53.1.1操作可行性 53.1.2技术可行性 53.1.3经济可行性 53.2功能需求分析 53.3用例分析 63.4数据流分析 73.5数据字典 9第4章 系统设计 134.1结构设计 134.2功能设计 134.3数据库设计 174.3.1概念设计 174.3.2逻辑设计 194.3.3表设计 20第5章 系统详细设计 245.1JavaEE连接数据库 245.2登录模块 245.3商品浏览模块 275.4留言模块 285.5商品评论模块 295.6购买商品模块 295.7系统用户管理模块 305.8商品管理模块 325.9订单管理模块 325.10订单生成模块 33第6章 系统测试 356.1测试目的 356.2测试用例 35第7章 结论 39参考文献 40致谢 41绪论1.1研究背景各种物品是人们日常的消费品,物品供应与消费者需求有着极为重要的关系。社会压力造成工作日渐繁忙,时间观念越来越强,简化事务、方便消费,使网络化销售逐渐成为消费社会化的需要。同时,由于人们生活消费质量的不断提高,各种物品消费需要由“数量型”向“质量型”转变,物品消费的消耗性、多样化也成为一种消费需求。这种消费型社会的大趋势已为网络销售业发展提供了良好商机。据了解,目前内陆各省大多有销售企业在运转,起步时间都不长,而且上规模的正规企业也不是很多,部分仍处于买卖双方谈妥价格后的私下交易。而在广东、山东、北京、上海、天津等地已有大规模的商品销售中心出现,特别是大城市中面向家庭客户的商品销售服务已蔚然兴起。然而,随着业务量的不断增长,众多企业目前都多多少少的面临着一个严峻的问题,就是由于缺乏信息化的支持,从商品生产到客户下单,再到物流运输的整个业务流程都缺乏有效管理,作业方式较为原始,管理成本不断攀升,而且差错率难以控制。本系统是针对企业面临的困境与现状,为方便消费者的购买以及将线上与线下更好的结合在一起,利用相关的技术所设计出的。1.2研究意义随着我国电子商务的迅速发展,网络销售已形成了一定的规模并取得较大的成功,其对企业的效益越来越突出。淘宝、京东、亚马逊、苏宁易购、国美等大型电子商务企业的崛起,由此可以看出网络销售的巨大潜力和崭新的盈利模式。网络销售可以加快产品的发布和宣传,使交易过程简化、自动化,销售方只需要把产品交给物流行业运作即可,省去传统交易模式的繁琐。在空间上可以减少店铺租金的支出,不用频繁的进货、卸货、装货以及上架产品,侧面上减少了实体店的数量,为目前堵塞的城市现状给予一定的缓解。

但是,目前网络销售在实践过程存在着部分问题:

(1)关于电子商务的法律法规不完善。无良商家肆无忌惮的通过网络售卖假冒伪劣产品,以假乱真,欺骗消费者。

(2)网络安全技术人才紧缺。目前,很多销售系统被黑客攻击甚至偷取信息、钱财等案件时有发生。

(3)网络宣传不到位。目前很多企业开通了网络销售系统,但在消费者中知名度不高。

1.3系统目标对于典型的数据库系统,尤其是对于像网上外卖商城这样的数据流量特别大的网络系统,必须要满足使用方便、操作灵活等要求。本系统在设计时应该满足以下几个目标(1)采用人机对话的操作方式,界面美观、友好,信息查询灵活、方便,数据存储准确、安全可靠;(2)全面展示所有商品,并可展示主要商品;(3)便于顾客快捷地进行商品信息查询;(4)用户可以随时修改自己的基本资料;(5)实现下单的功能;(6)顾客可以随时查看自己的订单信息;(7)对客户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误;(8)系统最大限度地实现了易维护性和易操作性;(9)系统运行稳定、安全可靠。1.4本文的结构本文具体内容包括:绪论、系统采用的关键技术、系统分析、系统设计、系统实现和系统测试。本文着重描述了系统的组成与结构,阐述了系统的设计方案、实现方法以及所采用的开发工具和相关技术,另外,重点剖析了部分环节的开发过程。本系统在一定的环境下对系统的重要模块进行了模拟测试,证实了系统的可用性、可靠性。关键技术介绍2.1开发环境介绍1.软件体系结构方案:采用B/S模式,B/S代表的是服务器端由web服务器发放,客户端由浏览器接收的系统,它的前台是html语言,由浏览器解释。B/S结构可以由web服务器能够解释的脚本语言如jsp、php、asp、JavaScript。2.操作系统方案:Windows7(旗舰版)操作系统,该系统可以兼容需要的软件,并且具有良好的运行速度,界面良好。3.后台数据库:选用Mysql。Mysql旨在通过数据库加密、更加安全的默认设置、加强的密码政策和细化许可控制、及加强的安全模型等特性,为企业数据提供最高级别的安全性。4.开发工具:选用Myeclipse105.开发语言:Java语言。6.开发技术:JavaEE+html+css+js技术2.2统一建模语言统一建模语言(UnifiedModelingLanguage,UML)是一种可视化建模语言,通俗上讲就是系统开发者利用UML可以清楚地表达出自己对系统是如何设计,是一种设计思想的体现,然而UML就是作为辅助工具,就如汽车轴承的轮滑油。UML包括了一些可以相互组合图表的图形元素。由于UML是一种语言,所以UML具有组合这些元素的法规。UML提供了多种图来设计设计系统,如设计系统前期常用的用例图,行为图等,这些图需要用多个视图来展示一个系统,这组视图被称为一个模型(Model)。一个UML模型描述了一个系统需要做什么。同时,UML提供了组织和扩展这些图的方法。2.3JAVAEE技术2.3.1JSP技术JSP是一类网页技术,产生网页的处理逻辑,支持可重用的组件设计,使基于Web的应用程序开发变得容易。具有如下几个优点。(1)内容与显示分离。(2)跨平台性。(3)一次编写,到处运行。(4)编写容易,快速上手。(5)可重用性。2.3.2JSP内置对象JSP内置对象也就是JSP的隐含对象,开发人员主要通过JSP脚本元素便可以调用这些隐含对象。JSP提供9个预定义变量,分别是:request、response、pageContext、session、application、out、config、page、exception,这9个预定义变量都是基于标准HTTP协议。2.3.3JDK的安装和配置JDK安装的步骤:双击下载的JDK安装程序,进入安装界面,单击“下一步”按钮,更改安装目录,改为:d:\java;连续点击“Next”按钮,直至安装结束。2.3.4Tomcat简介Tomcat在我们日常生活中的主要应用是Web应用服务器。它主要是是一种开发和调试方式。对于一个什么都不懂,刚开始接触的人来说,即用它访问HTML页面,做出相对的回应,而且它运行独立,不需要别的帮助。2.4Mysql简介Mysql是近年最流行的小型数据库,是瑞典AB公司推出的一个关系型数据库管理系统,同Mysql一样,它提供商业和企业级的数据管理,具有可扩展性、可伸缩性、集成程度高等有优点,在性能指标等各方面上都能和甲骨文公司的Oracle数据库媲美,它具有web开发的所有功能,开发人员可以用它来管理数据库文件、开发数据库应用程序和web程序,它采用了最先进的数据库架构,与windows下的各种操作系统完美兼容。它可以控制数据操作不管数据存在哪里,即使是移动终端。系统分析3.1可行性分析本系统操作简单,易理解。网上外卖商城与大部分电子商务系统的操作流程类似,避免了用户学习使用系统的时间和负担。3.1.1操作可行性本系统使用的是现流行的开发语言,即SSM框架技术。同时所有的信息都是以网页的形式展示,系统中的信息都可以在后台操作数据库达到数据更新的效果。用户只需要会计算机的基本操作或者会上网就可以使用本系统,系统管理员只需要懂得文件上传,处理文本即可操作管理后台。系统布局较简单,功能操作不复杂,完全符合现代市场需求。因此本系统具有操作可行性。3.1.2技术可行性本系统在Windows7开发环境下,利用Myeclipse10开发工具,并使用Mysql作为数据库管理系统来实现系统的各种功能。Mysql属于主从式的数据库服务器这也是主从式数据库服务器的特点,服务器本身重在数据的管理,为用户端应用程序提供一致的接口。可以提高系统的性能,降低它的局限性。3.1.3经济可行性本系统是一个在线的网上外卖商城,顾客可以直接在系统上购买商品,同时计算机的价格十分低廉,性能却有了长足的进步。而此系统的开发可以有效的提高工作效率,降低管理成本,节省管理费用,为企业的工作效率带来了一个质的飞跃。因此,本系统在经济上是完全具有可行性的。3.2功能需求分析通过本系统,卖家节省了用于交易场所、服务质量、维护商铺杂支开销等方面的投入,从而降低了价格;买家方面,不仅节约了时间成本,同时降低了购买成本,可以“货比三家”地随意挑选性价比高的产品。加快了交易和货币流通速度,而进而推动经济的增长。根据条件需要,系统结构主要由三大用户组成。一是买家组成的买家用户,二是管理员用户。1用户登录及身份要求验证买家、管理员等用户的信息2本系统销售功能需求(面向买家用户)允许买家用户在线留言。允许买家用户评论商品。允许买家用户查询商品的信息。允许买家用户对购物车的管理。自动生成订单。买家用户在线支付订单费用。买家选择商品,进行购买,填写发货地址、联系电话等信息。3本系统销售功能需求(面向卖家用户)对商品信息的管理(添加、删除,修改,查询)。对买家的订单的管理(删除,修改,查询)。管理商品的发布商家。对买家卖家用户注册信息的管理(添加,删除,修改,查询)。对商品信息的管理(删除,修改,查询)。对买家的订单的管理(删除,修改,查询)。对商品类别管理(添加、删除、修改商品类别)。3.3用例分析1.管理员主要负责系统管理、商品信息管理、商品类别管理、用户信息管理、订单管理,下图所示描述管理员的用例。图3-1管理员用例图2.买家用户主要使用系统的在线购买业务,下图所示为买家用户用例图。图3-2买家用例图3.4数据流分析数据流图的设计主要是由于系统目前功能还没有确定,可以先描述可能要使用到的功能内容,并且向用户了解“系统从外界接受什么数据”和“系统向外界送出什么数据”等信息,根据用户所给的答复进行设计数据流图。如下为系统的0层数据流图,系统用户分为管理员和普通用户。图3-4系统数据流图(0层)如下图所示为系统1层数据流图。图3-5系统数据流图(1层)网上外卖商城第二层数据流图主要详细反应各功能模块对应的操作与数据进行交互的原理。并且更详细的显示出各角色对功能模块操作的数据流向,让开发人员能了解该系统的开发方向,能够更准确的开发出系统模型。将商品信息维护进行细化得到商品信息管理二层数据流程图,如下图所示。图3-6商品管理数据流图(2层)将订单信息管理进行细化得到订单信息管理二层数据流程图,如下图所示。图3-7订单管理数据流图(2层)3.5数据字典1.数据存储描述下表描述了用户信息的数据流、数据来源、数据去向和数据流组成的词条。表3-1用户信息描述数据流用户信息数据流来源Mysql数据库中用户信息表,用户详细信息表数据去向系统界面,用户信息管理界面数据流组成用户名、用户密码、添加时间、编号下表描述了购物车信息的数据流、数据来源、数据去向和数据流组成的词条。表3-2购物车信息描述数据流购物车信息数据流来源Mysql数据库中购物车表,购物车详细信息表数据去向购物车界面数据流组成购物车ID、用户ID、商品ID、数量下表描述了订单信息的数据流、数据来源、数据去向和数据流组成的词条。表3-3订单信息描述数据流订单信息数据流来源Mysql数据库中订单表,订单详情表数据去向用户订单界面,订单管理界面数据流组成用户ID、订单ID、商品ID、下单时间、订单金额下表描述了商品类别的数据流、数据来源、数据去向和数据流组成的词条。表3-4商品类别信息描述数据流商品类别信息数据流来源Mysql数据库中商品类别表、商品详情表数据去向商品详情界面、购物车界面、商品类别管理界面数据流组成商品类别名下表描述了商品管理的数据流、数据来源、数据去向和数据流组成的词条。表3-5商品信息描述数据流商品信息数据流来源Mysql数据库中商品表、商品类别表数据去向商品查询界面、商品详情界面、购物车界面、商品管理界面数据流组成商品名、商品价格、发布商家、商品类别2.数据处理描述下表描述用户通过输入用户名和密码进行身份验证处理,验证成功后将返回的信息显示在界面上。表3-6用户身份验证处理逻辑名称用户身份验证简述检查输入信息的合法性输入的数据流用户名+密码处理过程根据输入的用户名和密码,检索用户,显示查询信息输出的数据流用户信息、商品信息下表描述用户成功登录系统后通过商品名查询商品信息,根据查询后返回的数据显示在界面上。表3-7商品信息查询处理逻辑名称商品信息查询简述检查输入信息的合法性输入的数据流商品名或商品编号或商品类别处理过程登录成功的用户,通过商品名查询用户所需的商品,还可查询用户的订单及评论。输出的数据流用户订单信息,购物车信息下表描述管理员用户成功登录系统后可以添加商品,添加后,重新查询商品表,返回的商品数据显示在界面上。表3-8商品信息添加处理逻辑名称商品信息添加简述检查输入信息的合法性输入的数据流商品信息处理过程登录成功的管理员用户,往数据库添加一条商品信息数据。输出的数据流商品信息,订单信息下表描述管理员用户成功登录系统后,购买商品,填写订单收货人、收货地址、联系电话等,生成购买订单后,重新查询订单表,返回的订单数据显示在界面上。表3-9订单生成处理逻辑名称订单生成简述检查输入信息的合法性输入的数据流订单信息处理过程登录成功的用户,往数据库添加一条订单信息数据。输出的数据流订单信息下表描述用户成功登录系统后通过公告标题查询公告信息,根据查询后,返回的公告数据显示在界面上。表3-10公告信息查询处理逻辑名称公告信息查询简述检查输入信息的合法性输入的数据流公告标题处理过程登录成功的用户,通过公告标题查询用户所需的公告信息输出的数据流公告信息系统设计4.1结构设计本系统的设计是基于SSM框架+Mysql数据库+Tomcat服务器的方式设计,以Myeclipse10为开发工具,并运用PhotoshopCS6技术美化网页,辅之以CSS技术。本系统使用的角色主要有系统管理员和普通用户,系统分为前台和后台,前台主要用于商品的展示和购买,后台用于商品信息和订单信息的管理,首先以普通用户通过账号注册后登录系统前台,可以进行各种商品的信息浏览和搜索,买家用户可以将需要的商品进行下单购买,用户可以查询订单是否已经被卖家确认,订单生成后表示买家用户购买成功,前台系统除了可以进行商品的下单还可以查看新闻公告,进行商品评论,买家用户同时可以修改个人的信息资料,查看个人的购买记录;以管理员的身份登录系统后台可以进行订单管理、商品维护、评论维护。系统功能结构图如下所示。图4-1系统功能结构图4.2功能设计1.用户登录模块:确保用户注册信息的真实度是提高系统效率和盈利的重要因素。真实的用户才能带来价值,注册是保证真实用户使用系统主要业务的第一步,通过对用户注册信息的审核,可防止机器注册。使用现如今较为流行的管理员进行账号激活的验证方式,对用户注册信息进行过滤,未激活用户信息将不能使用系统主要功能。如下图所示为用户登录流程图。图4-2用户登录流程图2.商品浏览模块:没有登录的用户和登录的用户都可以在系统前台进行商品浏览,用户可以查看商品的详细信息和选择相应的商品类别进行该类别下的商品查看,用户还可以通过商品名称的关键字进行搜索。如下图所示为商品浏览流程图。图4-3商品浏览流程图3.订单管理模块:用户购买商品后,填写收货地址、收货人、电话等信息,生成订单信息,管理员可以审核订单,删除、修改订单,对订单信息进行相应的商品发货。如下图所示为订单管理流程图。图4-4订单管理流程图4.商品管理模块系统管理员可以对商品信息进行增、删、改、查的操作。5.用户管理模块系统管理员可以对用户信息进行增、删、改、查的操作。6.购物车模块用户对个人添加至购物车里面的商品进行增删改查等操作。如下图所示为购物车模块流程图。图4-5购物车模块流程图7.评论管理模块用户在线评论商品,管理员回复评论,管理删除评论。8.商品类别管理模块系统管理员可以对商品类别进行增、删、改、查的操作。4.3数据库设计4.3.1概念设计本系统的E-R图表现了系统中各个实体之间的联系,经过分析,系统的实体有商品、商品类别、留言、订单、用户等。商品信息的实体图如下图所示。图4-6商品信息实体图商品类别实体图如下图所示。图4-7商品类别信息实体图留言信息实体图如下图所示。图4-8留言信息实体图会员信息实体图如下图所示。图4-9用户信息实体图订单信息的实体图如下图所示。图4-10订单信息实体图系统总体的实体图如下图所示。图4-11系统E-R图4.3.2逻辑设计Allusers表是系统用户的信息表,存储系统用户真实姓名、性别、年龄、电话、地址、备注、编号、姓名、用户密码以及其相对应的密码等相关信息。Dingdan表是订单信息表,存储用户的订单的相关信息,其中包括编号、订单号、金额、订单内容、用户名、姓名、邮件地址、邮编、手机、快递类型、快递费用、添加时间、是否审核等相关信息。goumaijilu表是用户购买记录信息表,存储用户的订单的内容信息,其中包括编号、商品编号、商品名称、类别、价格、库存、购买数量、总额、购买人、备注、添加时间等相关信息。liuyanban表是用户留言信息表,存储用户的留言的内容和回复信息,其中包括编号、头像、性别、QQ、邮箱、电话、内容、添加时间、回复内容等相关信息。yonghuzhuce表是用户注册信息表,存储用户的注册信息,其中包括编号、用户名、密码、姓名、性别、出生年月、QQ、邮箱、电话、身份证、头像、地址、备至、折扣等相关信息。shangpinxinxi表是商品信息表,存储商品内容的信息,其中包括编号、商品编号、商品名称、类别、价格、发布人、图片、库存、销量、简介、添加时间等相关信息。xinwentongzhi表是公告信息表,存储公告的内容信息,其中包括编号、标题、类别、内容、添加人、首页图片、点击率、添加时间、摘要等相关信息。4.3.3表设计数据库表设计:经过前期的需求分析、可执行分析、数据流分析等各个流程分析,结合软件工程的高内聚、低耦合规则,并考虑到以后的程序功能扩展,设计如下几张表。allusers表:序号字段名称字段类型大小允许为空最大长度备注1idInt410

2username150255

3pwd150255

4cx150255

5addtimeDateTime819

dingdanxinxi表:序号字段名称字段类型大小允许为空最大长度备注1idInt410

2dingdanbianhao150255

3jine150255

4dingdanneirong255255

5yonghuming150255

6xingming150255

7shouji150255

8dizhi150255

9beizhu255255

10dingdanzhuangtai150255

11peisongqingkuang255255

12issh30255

13iszf30255

14addtimeDateTime819

goumaijilu表:序号字段名称字段类型大小允许为空最大长度备注1idInt410

2shangpinbianhao150255

3shangpinmingcheng150255

4leibiemingcheng150255

5jiage150255

6fabushangjia150255

7goumaishuliang150255

8jine150255

9beizhu255255

10goumairen150255

11issh30255

12addtimeDateTime819

liuyanban表:序号字段名称字段类型大小允许为空最大长度备注1idInt410

2cheng150255

3xingbie150255

4QQ150255

5youxiang150255

6shouji150255

7neirong255255

8huifuneirong255255

9addtimeDateTime819

pinglun表:序号字段名称字段类型大小允许为空最大长度备注1IDInt410

2xinwenID255255

3pinglunneirong255255

4pinglunren255255

5addtimeDateTime819

6biao150255

7pingfenInt410

shangjia表:序号字段名称字段类型大小允许为空最大长度备注1idInt410

2zhanghao150255

3mima150255

4shangjiamingcheng150255

5fengmian150255

6dianpudizhi150255

7lianxidianhua150255

8beizhu255255

9issh30255

10addtimeDateTime819

shangpinleibie表:序号字段名称字段类型大小允许为空最大长度备注1idInt410

2leibiemingcheng150255

3addtimeDateTime819

shangpinxinxi表:序号字段名称字段类型大小允许为空最大长度备注1idInt410

2shangpinbianhao150255

3shangpinmingcheng150255

4leibiemingcheng150255

5tupian150255

6jiage150255

7shangpinjieshao255255

8fabushangjia150255

9issh30255

10addtimeDateTime819

xinwentongzhi表:序号字段名称字段类型大小允许为空最大长度备注1idInt410

2biaoti150255

3leibie150255

4neirong1073741823255

5shouyetupian150255

6dianjilv150255

7tianjiaren150255

8addtimeDateTime819

9dddDateTime819

yonghuzhuce表:序号字段名称字段类型大小允许为空最大长度备注1idInt410

2yonghuming150255

3mima150255

4xingming150255

5xingbie150255

6chushengnianyueDateTime819

7QQ150255

8youxiang150255

9shouji150255

10shenfenzheng150255

11touxiang150255

12dizhi150255

13beizhu255255

14issh30255

15addtimeDateTime819

系统详细设计5.1JavaEE连接数据库由于数据库连接Connection是比较重量级的对象,如果每次进行数据库操作都需要创建一个该对象,操作结束后在销毁该对象,这对程序来讲是不可取的,也不符合系统“高内聚”的设计原则,对此我们采用单例模式实现。单例模式的设计原理为:在类中定义私有(private)、静态成员(static)、将构造器私有化(private)防止用户通过new方法创建实例。当第一次访问时,初始化私有成员、返回该对象、第二次之后的访问就无需再次初始化该对象,直接返回即可。鉴于多线程等方面的考虑,最后设计的类如下:publicConnectiongetConn() { try { if(conn==null||conn.isClosed()){ //Class.forName("com.mysql.jdbc.Driver"); //conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/javatemp","root","");Class.forName("com.microsoft.Mysql.jdbc.MysqlDriver"); conn=DriverManager.getConnection("jdbc:Mysql://localhost:1433;databaseName=jspmfdcysfxxxt","sa","sa123456"); }} catch(Exceptione) { e.printStackTrace(); } returnconn; }5.2登录模块本系统主要的用户有系统管理员、买家用户,一个系统最基本的功能就是登录功能,本系统可以进行系统登录的角色有买家用户、管理员,买家对应前台登录界面,管理员对应后台登录界面,首先进入登录页,输入用户名和密码,然后提交至服务端进行数据库数据验证,通过JavaEE逻辑代码判断数据库是否存在用户输入的这一个记录,如果存在,则判断用户身份,如果是买家用户,则进入买家前台,如果是管理员用户,则进入系统主页,并把用户对象存放在session中,如果不存在这样一条记录,则返回登录界面。登录界面如下所示。图5-1前台登录界面图5-2后台登录界面图5-3用户注册界面登录关键代码如下:if(ac.equals("adminlogin")) { Stringusername=request.getParameter("username"); Stringpassword=request.getParameter("pwd"); Stringutype=request.getParameter("cx"); Stringpagerandom=request.getParameter("pagerandom")==null?"":request.getParameter("pagerandom"); Stringrandom=(String)request.getSession().getAttribute("random"); if(!pagerandom.equals(random)&&request.getParameter("a")!=null) { request.setAttribute("random",""); go("/login.jsp",request,response); } else{ Stringsql1="select*fromalluserswhereusername='"+username+"'andpwd='"+password+"'"; List<HashMap>userlist1=dao.select(sql1); if(userlist1.size()==1) { request.getSession().setAttribute("username",userlist1.get(0).get("username")); request.getSession().setAttribute("cx",userlist1.get(0).get("cx")); gor("main.jsp",request,response); }else{ request.setAttribute("error",""); go("/login.jsp",request,response); } } }5.3商品浏览模块系统为用户提供简洁的商品视图,方便用户找到自己需要的商品。在shangpinxinxilist.jsp实现商品列表的展示,用户点击某个商品,通过商品id传递值,找到数据表的该商品的信息。如下图所示为商品浏览界面。图5-4商品浏览界面商品浏览关键代码如下:publicList<HashMap>select(Stringsql,intpageno,introwsize){ List<HashMap>list=newArrayList<HashMap>(); List<HashMap>mlist=newArrayList<HashMap>(); try{ list=this.select(sql); intmin=(pageno-1)*rowsize; intmax=pageno*rowsize; for(inti=0;i<list.size();i++) { if(!(i<min||i>(max-1))) { mlist.add(list.get(i)); } } }catch(RuntimeExceptionre){ re.printStackTrace(); throwre; }5.4留言模块要实现买家用户和管理员之间的交流需要设计留言模块,买家用户在系统前台发布留言,管理员在系统后台回复留言,商品留言模块分为3个重要部分,第一个是发表,用户必须登录后才能进行留言的发表。第二部分就是管理员对商品留言进行回复,管理员登录后点击留言列表中具体的留言信息,然后就可以进行查看留言的详细内容,然后也可以对本条留言进行回复。第三部分就是留言的显示,用户的每条留言信息和回复信息都将按时间顺序排列下来。留言界面如下图所示。图5-5留言界面留言关键代码如下:<%HashMapext=newHashMap();Stringtglparentid=request.getParameter("tglparentid")==null?"":request.getParameter("tglparentid");ext.put("tglparentid",tglparentid);ext.put("huifuneirong","");newCommDAO().insert(request,response,"liuyanban",ext,true,false,"lyblist.jsp");%>5.5商品评论模块系统提供商品评论功能,在pinglunadd.jsp实现商品的评论,添加评论后,存入数据库的评论表。管理员管理商品的评论信息。如下图所示为评论的部分界面。图5-6评论界面商品评论关键代码如下:<%Stringid=request.getParameter("id");Stringbiao=request.getParameter("biao");HashMapext=newHashMap();newCommDAO().insert(request,response,"pinglun",ext,true,true,"");%>5.6购买商品模块用户在浏览商品后,登录系统前台,进行商品购买,将商品添加至购买车,在个人后台可以查看购买车里面的商品,确定商品之后可以生成订单,然后支付。如下图所示为购买商品的部分界面。图5-7购买商品界面购买商品关键代码如下:<%HashMapext=newHashMap();if(request.getParameter("f")!=null){ext.put("issh","否");newCommDAO().insert(request,response,"shujujilu",ext,true,false,"");}%>5.7系统用户管理模块过去传统的手工登记管理系统人员信息很不方便,也很容易造成数据出错,所以本系统需要一个可以管理登记人员信息的功能,管理员登入系统,可以添加新的管理员用户,删除现有的管理员,也可以对自己的密码和管理员用户的密码进行修改。修改密码是经过跟数据库的原来的密码字段的数据进行判断,如果输入两次的新密码一致,则更新密码这属性对应的一条数据。如下图所示为系统用户管理的部分界面。图5-8系统用户管理界面如下图所示为修改密码界面。图5-9修改密码界面系统用户管理关键代码如下:<%newCommDAO().delete(request,"yonghuzhuce");Stringurl="yonghuzhuce_list.jsp?1=1";Stringsql="select*fromyonghuzhucewhere1=1"; if(request.getParameter("yonghuming")==""||request.getParameter("yonghuming")==null){}else{sql=sql+"andyonghuminglike'%"+request.getParameter("yonghuming").trim()+"%'";} if(request.getParameter("xingming")==""||request.getParameter("xingming")==null){}else{sql=sql+"andxingminglike'%"+request.getParameter("xingming").trim()+"%'";} if(request.getParameter("QQ")==""||request.getParameter("QQ")==null){}else{sql=sql+"andQQlike'%"+request.getParameter("QQ").trim()+"%'";} if(request.getParameter("youxiang")==""||request.getParameter("youxiang")==null){}else{sql=sql+"andyouxianglike'%"+request.getParameter("youxiang").trim()+"%'";} if(request.getParameter("dianhua")==""||request.getParameter("dianhua")==null){}else{sql=sql+"anddianhualike'%"+request.getParameter("dianhua").trim()+"%'";} if(request.getParameter("shenfenzheng")==""||request.getParameter("shenfenzheng")==null){}else{sql=sql+"andshenfenzhenglike'%"+request.getParameter("shenfenzheng").trim()+"%'";}sql+="orderbyiddesc"; //out.print(sql); ArrayList<HashMap>list=PageManager.getPages(url,10,sql,request); inti=0; for(HashMapmap:list){ i++;%>5.8商品管理模块商家可以对商品进行增删查改的操作,这些操作将在商品管理界面进行。如下图所示为商品管理界面。图5-11商品管理界面商品发布关键代码如下:<%HashMapext=newHashMap();if(request.getParameter("f")!=null){ext.put("issh","否");newCommDAO().insert(request,response,"shujujilu",ext,true,false,"");}%>5.9订单管理模块管理人员可以对订单进行增删查改的操作,这些操作将在订单管理界面进行。如下图为订单管理界面。图5-12订单界面订单生成关键代码如下:<%HashMapext=newHashMap();if(request.getParameter("f")!=null){ext.put("issh","否");newCommDAO().insert(request,response,"shujujilu",ext,true,false,"");}%>5.10订单生成模块首先,用户登录系统,进行商品的下单,下单时要指定商品名称、订单数量、备注等重要信息,生成订单,管理员登录后台进行用户订单审核,审核通过,进行商品发货,用户购买成功,用户可以查看自己的订单、有权删除或修改订单。订单生成的界面如下图所示。图5-13订单生成界面添加订单的关键代码如下:<%HashMapext=newHashMap();if(request.getParameter("f")!=null){//qiujiext.put("issh","否");ext.put("iszf","否");Stringsql1="updategoumaijilusetissh='是'whereyonghuming='"+request.getSession().getAttribute("username")+"'";newCommDAO().commOper(sql1);}newCommDAO().insert(request,response,"dingdanxinxi",ext,true,false,"");%>系统测试6.1测试目的该系统能够完成商品选购,加入购物车,商品管理,商品类别管理,订单管理,购物车管理,用户管理等功能,做到所开发的系统操作简单,尽量使系统操作不受用户对电脑知识水平的限制,符合系统可维护性,由于系统涉及的信息比较广,数据库中的数据需定期修改,系统可利用的空间及性能也随之下降,为了使系统更好地运转,系统可以对系统数据及一些简单的功能进行独立的维护及调整;符合系统开放性要求,该系统能够在开放的硬件体系结构中运行,并且能与其他系统顺利连接。6.2测试用例1.注册测试表6-1注册测试用例字段名称描述测试项首页注册功能测试输入数据1、输入正确的邮箱、用户名、密码、确认密码、以及验证码之后点击“注册”按钮2、输入错误的用户名或密码、邮箱、验证码等,单击“注册”按钮3、不输入邮箱、用户名、密码、确认密码、以及验证码之后点击“注册”按钮预计输出数据1、用户能正确注册账号,成功插入数据库用户的账户资料,提示注册成功。2、无法注册用户信息,注册失败。3、无法注册用户信息,注册失败。使用上述测试用例对前台首页注册界面进行测试,当在输入正确的邮箱、用户名、密码、确认密码、以及验证码之后,系统将弹出注册成功信息提示对话框。使用上述测试用例对前台首页注册界面进行测试,当在输入错误的用户名或密码、邮箱、验证码之后,系统将提示错误。使用上述测试用例对前台首页注册界面进行测试,当在不输入用户名、密码、邮箱、验证码之后,点击注册按钮。2.登录界面进行测试

表6-2登录测试用例测试项首页登录功能测试输入数据1、输入正确的用户名和密码,单击“登录”按钮2、输入错误的用户名和密码,单击“登录”按钮3、不输入用户名和密码,单击“登录”按钮预计输出数据1、数据库中存在的用户能正确登录,。结果弹出主界面。2、错误的或者无效用户登录,登录系统失败。3、输入用户名或密码信息为空,登录系统失败。使用上述测试用例对前台首页登录界面进行测试,当在用户名输入框中输入正确的用户名和密码时候,系统将弹出登录成功信息提示对话框。使用上述测试用例对前台首页登录界面进行测试,当在用户名输入框中输入错误的或无效的用户名时,系统将弹出错误信息提示对话框。通过测试可以观察到实现的运行结果与测试用例中预计输出的结果是相符的,所以测试通过。3.在线留言测试表6-3在线留言测试用例功能测试数据预期结果测试结果上留言(用户)留言题目:asd留言内容:aszcv在留言列表中显示留言题目,点击显示留言内容。留言显示为未回复在留言列表中显示留言题目,点击显示留言内容。留言显示为未回复留言(管理员)回复留言:dxvcv。留言列表中留言“asd”显示已回复,点击留言题目,显示留言内容和回复内容留言列表中留言“asd”显示已回复,点击留言题目,显示留言内容和回复内容删除留言删除留言“asd”留言成功删除留言成功删除4.商品管理进行测试

名称:用户管理测试

目的:测试商品管理界面

内容:口令的输入,合法性检查,合理性检查,界面的显示控制。

下表描述了商品表中目前所存在的记录。表6-5商品表预存数据商品名商品类别商品价格商品状态AA389上架BB249上架CC322下架DD168上架添加时应注意事项:管理员添加商品时必须添加已存在的商品类别,若该商品不属于现有的所有类别,则应该先添加商品类别。下表描述了添加商品进行测试的用例,主要是为了防止添加商品时出现异常和存在的漏洞。表6-6添加商品测试用例输入输出商品名商品价格商品图片空参数错误空参数错误空请选择上传图片A1a.jpg添加成功5.购买商品测试

名称:购买商品测试

目的:测试购买商品界面

内容:口令的输入,合法性检查,合理性检查,界面的显示控制。

下表描述了购买商品的测试用例,防止购买时出错。表6-7购买商品测试用例输入输出用户ID商品ID商品数量1111购买商品成功22电视请填写商品数量33电视a购买失败用户购买商品时,首先判断商品数量是否小于库存,若超出发布商家,则提示商品数量不足。6.订单生成测试

名称:订单生成测试

目的:测试提交订单界面内容:口令的输入,合法性检查,合理性检查,界面的显示控制。

下表描述了订单生成的测试用例,防止订单生成错误,造成企业和客户的损失。表6-8订单生成测试用例输入输出订单编号联系人地址电话11张三某下区12号楼212312323订单生成成功22张三123423423请填写收货地址33张三某下区12号楼请填写联系电话44某下区12号楼123423423请填写联系人姓名结论经过这几个月的设计和开发,“基于SSM框架的网上外卖商城”已经完成了,其功能符合设计需求,能够完成买家用户的注册、买家用户的在线购买、购物车管理、订单管理和管理员的商品类别管理、订单审核、商品审核、用户管理、系统管理,信息维护、查询等

温馨提示

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

评论

0/150

提交评论