基于SSM框架校园网上订餐系统设计与实现.docx
基于SSM框架校园网上订餐系统设计与实现 基于SSM框架的校内网上订餐系统的设计与实现 Design and Implementation of Campus Online Food Ordering System Based on SSM Framework 中文摘要 这十几年来,随着人们对互联网技术的不断研发推动,越来越多新的智能系统设备起先出现在人们的视觉当中,而这其中网络就充当着一个关键的角色,它是我们智能设备能够正常工作的一个重要载体。而与此同时,随着人们生活的不断加快,网上订餐需求不断扩大,由于其独有的便捷性,越来越被大部分年轻人所宠爱。而对于坐拥数以万计师生群体的学校来说,由于集中点餐的现象特别明显,往往许多学校的食堂都已经处于超负荷运行状态,不仅会造成食堂空间上的拥挤,而且也白白奢侈掉了顾客珍贵的时间。所以校内网上订餐的出现是适应学校发展的潮流,它可以满意绝大多数师生群体对于饮食多样化的需求。而不同于寻常的订餐系统的是,校内网上订餐系统可以更好地聚集全校的各大餐饮店铺,因为往往许多时候不同的商家会入驻不同的订餐平台,这样可以避开顾客每次点不同商家的外卖都须要切换不同的订餐平台的繁琐行为。 关键词:网络 网上订餐 校内 订餐平台 Abstract Over the past ten years, as people continue to develop Internet technology, more and more new intelligent system devices have begun to appear in peoples vision, and among them, the network has played a key role. An important carrier that can work properly. At the same time, as peoples lives continue to accelerate, the demand for online ordering continues to expand. Due to its unique convenience, it is more and more popular with most young people. For schools with tens of thousands of teachers and students, because the phenomenon of concentrated ordering is very obvious, often the canteens of many schools are already overloaded, which will not only cause congestion in the canteen space, but also in vain Wasted valuable customer time. Therefore, the emergence of online meal booking on campus is in line with the trend of school development, which can meet the needs of the vast majority of teachers and students for diverse diets. What is different from the ordinary food ordering system is that the campus online food ordering system can better gather the major catering stores in the school, because often many different merchants will settle in different ordering platforms, which can avoid customers ordering different merchants every time. Takeaways require the cumbersome behavior of switching between different ordering platforms. Key words: Network Online Order Campus Ordering Platform 书目 第一章 绪论 1 1.1 项目的开发背景 1 1.2 项目简介 1 1.3 项目的需求概述 1 1.4 项目的开发技术选择 2 其次章 系统开发工具和技术简介 3 2.1 IntelliJ IDEA 3 2.2 MySQL 3 2.3 Spring+SpringMVC+Mybatis 3 2.4 JSP 4 2.5 Tomcat 4 2.6 Bootstrap/H-ui.amin 4 2.7 MVC设计模式 5 第三章 系统需求分析 6 3.1 系统功能需求 6 3.2 系统功能模块图 6 3.3 用例总表 7 3.4 用例图 8 3.4.1 前台参加者用例图 8 3.4.2 后台参加者用例图 8 3.5 状态图 9 第四章 数据库设计 10 4.1 E-R图设计 10 4.2 数据库表设计 10 第五章 系统模块具体设计 14 5.1 前台模块设计 14 5.1.1 用户注册 14 5.1.2 用户登录 14 5.1.3 美食搜寻 15 5.1.4 美食订购 15 5.1.5 订单详情 17 5.1.6 用户评论 17 5.1.7 用户注销 18 5.1.8 校内资讯 19 5.1.9 常见问题 19 5.2 后台模块设计 19 5.2.1 用户管理 20 5.2.2 评论管理 20 5.2.3 管理员管理 20 5.2.4 资讯管理 22 5.2.5 美食管理 22 5.2.6 订单管理 23 第六章 系统测试 24 6.1系统测试的重要性 24 6.2测试环境 24 6.3功能测试 24 第七章 结论 28 参 考 文 献 29 致谢 30 第一章 绪论 1.1 项目的开发背景 随着教化的不断普及与完善,如今全国2800多所高校有着4000万左右的高校生,越来越多的公司企业起先重视校内市场这一块浩大的市场。而且民以食为天,饮食行业在将来很长一段时间内并不大可能会出现大的萧条现象,在某种程度上它能够刺激国民的消费热忱以及社会经济的发展。本次以此作为项目背景,建设一个基于web形式的校内网上订餐系统,由于web的跨平台性,使得该系统无需考虑不同的平台环境,即可在任何系统的阅读器进行在线阅读,用户只需注册登录即可点餐下单。 1.2 项目简介 由于校内主要群体当中,学生集中在同一时间段点餐的现象特别明显,他们常常会因为各种排队等餐而奢侈掉自己珍贵的时间,假如去晚了有时还会错过自己心仪的食物。其次,由于学校的餐饮店铺众多,在校群众时常难以全面了解各大餐饮店铺的饮食种类以及销售状况,并且许多时候不同的商家入驻不同的外卖平台,造成用户每次点不同商家的外卖都须要切换不同的外卖平台,以此奢侈了用户的点餐时间。本次项目意在解决如上述状况,拟建设一个聚合校内各大餐饮店铺的点餐平台,以美食分类的方法区分并筛选出各大餐饮店铺的美食列表,保证师生等在校群众能够刚好、精确、便利地订购以及获得自己心仪的食物。 1.3 项目的需求概述 系统总体须要供应超级管理员,商品管理员,一般用户这三种权限管理的角色。其中,超级管理员为最高权限用户,主要维护系统稳定运行以及管理下级角色用户;商品管理员主要管理美食的增删改查;一般用户即为点餐用户,只拥有系统的查看权限。 系统总体由前台点餐界面和后台管理界面这两大部分组成,前台点餐界面主要用于美食的销售,顾客必需先注册登录才能点餐下单。后台管理界面则以两种管理角色进行区分,商品管理员只拥有对美食和订单的管理权限,而超级管理员则可以对用户,评论,管理员,校内资讯,美食,订单进行管理。 1.4 项目的开发技术选择 通过在网上查阅了大量的相关文献,其中不乏一些关于前端和后端开发技术的文献,通过参考阅读这些文献,可以让自己对技术有更好的定位以及选择。我们都知道,开发的技术选择有许多种,选择其中适合自己开发的一种或者多种相关技术,可以让自己更好更快地进行项目的开发。所以最终我确定采纳Bootstrap、H-ui.amin作为前端的主要开发框架,而后端则采纳SSM(Spring、SpringMVC、mybatis)框架和MySQL进行项目的整合开发。 其次章 系统开发工具和技术简介 2.1 IntelliJ IDEA IntelliJ IDEA是特地为编写Java语言而开发出来的一套集成环境,由于它强大的整合实力,提示功能的快速便捷,以及良好的代码模板,颇受众多开发者的宠爱。其中,它的一些小功能特殊有心也有用,比如在本地修改编辑某个文件之后,再重新最大化IDEA,它会自动同步对文件进行数据更新,不须要你再去手动导入。另外,它的智能选取快捷功能,可以更好地帮助我们进行代码的选取,这个在重构的时候会变得特殊便利,因为它会帮我们一层一层地往外进行扩充选取。比如从一个变量渐渐扩充至整个类。当然,IntelliJ IDEA还有一个特殊强大的功能就是代码的追踪实力,在我们进行BUG调试的过程中,可以快速定位至某行代码,并且还可以在代码界面上提示相关的值。 2.2 MySQL MySQL是由Monty Widenius在1996年时所发布的一款免费开源的关系型数据库管理系统,这个数据库发展至今,也是目前较为流行的一款DBMS。MySQL凭它借自身免费开源、体积占用小、运行速度快、运用范围广、平台支持性好的特点在众多数据库中脱颖而出,这也正是这次选取它作为本次系统数据库的关键依据。 2.3 Spring+SpringMVC+Mybatis 本次项目采纳SSM作为系统后台框架进行业务的开发,可以快速为项目搭建好后台开发环境和架构,为自己后期项目的开发进度供应了保障。其次,作为整合的三大技术,Spring依靠其限制反转、切面编程、依靠注入的特性,可以让代码得到充分的复用性,大大提高了系统的可维护性。SpringMVC通过其限制器将系统的前端与后台得到了肯定关联,如前端限制器(DispatcherServlet)通过接受来自客户端发出的恳求,并在后台分发给不同的处理器(Controller),处理器(Controller)处理完恳求之后就会返回一个视图模型(ModelAndView),然后通过视图解析器(ViewResolver)将其进行解析,并最终返回给前端限制器(DispatcherServlet)进行渲染,显示给用户。Mybatis则是一款优秀的长久化框架,它没有任何第三方依靠,简洁而快速敏捷地管理SQL。如Mybatis通过XML文件来编写SQL语句,可以将业务逻辑代码跟数据访问分别,让系统的设计变得更加清楚简洁,提高程序的可维护性。 2.4 JSP JSP是由Sun公司最先推出的一门针对网页开发的技术,主要运行在服务器端。由于JSP其底层运用的是Java脚本语言,这使得在JSP页面中可以去运用Java语言所通用的语法规则,甚至一些Java相关组件。从而也使得Java语言得到了进一步的功能扩展,侧面提高Java语言在行内的运用度。 作为目前网页开发中最常见的技术之一,JSP继承了Java语言中“一次编译,到处运行”的特性,能够实现程序与硬件平台的分别,这对于程序运行效率的提升发挥着重要作用。在本次系统设计中,JSP页面主要是向用户展示前台视图的一个界面,在SpringMVC中相当于一个View层的形式存在,JSP在该层须要与Controller层结合起来进行开发,其运行机制如下:JSP发送恳求,Controller限制器接受并处理该恳求,并返回至JSP,JSP回显数据到页面上。 2.5 Tomcat Tomcat是目前较为流行的一款轻量级的Web应用级服务器,依靠其免费开源,占用体积小,可扩展性高的特性,而被众多软件公司和个人开发者所认同和宠爱,在实际开发中它普遍应用于一些并发量比较少的中小型系统中。除此之外,Tomcat本质上也相当于是一个Servlet容器,它也具备了Servlet容器的特性,包括负责类的加载,实例化,以及促使实例资源的被回收等生命周期的管理,供应了每接收一个Servlet恳求就创建一个Java线程的多线程支持,也可以通过XML文件的声明方式来提高程序的平安性。 2.6 Bootstrap/H-ui.amin Bootstrap是一套用于帮助开发者快速搭建web应用程序的前端框架,它底层是基于HTML、CSS、JavaScript这三种基础的前端语言进行开发。Bootstrap已经帮我们封装好了许多各种各样、简约而不简洁的web组件,我们只须要依照其相关规范进行编写,即可快速的帮助我们进行前端界面的开发。本次系统的前台界面就是基于Bootstrap开发。 H-ui是参考Bootstrap而开发的一套全新框架,它是一个基于MIT协议的免费开源项目,可供个人网站和商业站点的运用。而H-ui.amin是基于H-ui开发的一个后台管理模板,可以帮助开发者省去搭建前端界面的时间。本次系统的后台管理界面就是以H-ui.amin作为模板开发。 2.7 MVC设计模式 MVC模式是我们Web开发中最常见的开发设计模式,主要由模型(Model)、视图(View)、 限制器(Controller)这三层组件构成,这三者之间的功能分工状况如图2-7显示,可以看到它们彼此之间分工明确,各自履行自己的功能职责。Model层主要是用于一些业务逻辑的推断,以及数据库的相关存取操作,是这三层当中唯一可以与数据库进行打交道的模型。View层是向用户展示数据和响应用户恳求的一个视图层,是用户能够与系统进行人机交互的一个干脆交互界面。Controller层则主要是处理来自前端用户发出的恳求,对恳求的一个数据进行分发处理,并移交至Model层来执行。总的来说,MVC设计模式让模型、视图、限制器各自明确了自己的功能职责,在降低模块与模块之间的耦合度上,起到了特别关键的作用。 2-7 MVC三大组件的分工状况 第三章 系统需求分析 3.1 系统功能需求 系统总体由前台点餐界面和后台管理界面两部分组成,前台主要用于游客和用户阅读美食,后台则为超级管理员和商品管理员供应管理界面。 首先,进入前台点餐界面,假如用户没有登录,系统则默认用户为游客,只只供应以下权限:美食分类阅读,美食详情,美食搜寻,登录注册以及常见问题板块的阅读。其余功能:美食订购,查看购物车,订单支付,查看订单,评论美食,阅读校内资讯,注销,则须要用户登录才能供应。运用流程:用户首先进入点餐界面,依据美食分类,发觉有自己喜爱的美食,点击该美食进去查看美食详情页,该界面可以查看美食价格、美食描述、美食销售状况,美食相关评价,美食所属商家等相关信息,假如对美食满足的话可以选择马上购买或者加入购物车,选择马上购买则干脆跳转至支付订单界面,查看相关结算数据,填写相关收货信息后并支付即下单胜利,之后可以在我的订单中查看美食的发货状态。而选择加入购物车,则会在你阅读并加入其他美食进购物车之后,在购物车界面中选择你要购买的美食,选择下单进入订单支付界面,查看相关结算数据,填写相关收货信息后并支付即下单胜利,之后也都可以在我的订单中查看美食的发货状态。完成美食配送之后,用户可以对美食进行评价。其次,管理员进入管理界面之前,须要进行后台的一个登录,登录完之后依据用户登录角色的不同,供应不同的操作权限。超级管理员权限最大,拥有整个系统的管理操作,而商品管理员拥有的操作权限仅限如下:查看订单列表,查看评论列表,查看订单项,查看美食列表,查看分类列表,订单发货,美食下线,添加美食,修改美食,删除美食,添加美食分类,修改美食分类。超级管理员可以依据实际状况在后台给予商品管理员某些操作权限。 3.2 系统功能模块图 系统的功能模块图如图3-2所示: 3-2 模块功能结构设计图 3.3 用例总表 系统的全部用例如下表: 校内网上订餐系统中的用例 编号 参加者 用例名称 用例说明 1 游客 注册 注册用户可以通过注册页面免费注册成为一般用户 2 登录 用户只有进行登录后才可以进行订餐 3 游客/用户 查看美食 点击美食后查看详细美食介绍、价格等信息 4 美食搜寻 通过关键词的方式可模糊查询对应的美食列表 5 查看美食分类 在不同的美食专区可以查看对应的美食列表 6 查看常见问题 可以查看针对系统的一些常见问题 7 用户 加入购物车 将美食加入自己的购物车 8 订购美食 可以通过干脆购买或者购物车的方式进行结算 9 查看订单 查看自己的订单详情 10 注销 退出登录状态 11 查看校内资讯 阅读关于本校的资讯信息 12 商品/超级管理员 管理订单列表 在后台对用户的前台订单进行处理 13 美食管理 后台对美食的信息进行处理 14 超级管理员 设置用户会员状态 设置用户是否为会员 15 美食评论管理 可对评论进行删除操作 16 校内资讯管理 可对资讯进行审核与删除操作 17 管理员管理 可在其中对角色、权限、管理员进行管理操作 3-3 系统用例表 3.4 用例图 3.4.1 前台参加者用例图 游客状态下拥有以下权限:注册、登录、查看美食、美食搜寻、查看美食分类、查看常见问题。 用户状态下拥有以下权限:查看美食、美食搜寻、查看美食分类、查看常见问题、查看校内资讯、加入购物车、订购美食、查看订单、注销。 3-4-1 前台参加者用例图 3.4.2 后台参加者用例图 商品管理员拥有以下管理权限:订单列表管理、美食管理。 超级管理员拥有以下管理权限:设置用户会员状态、美食评论管理、订单列表管理、美食管理、校内资讯管理、管理员管理。管理员管理则又包括角色管理、权限管理、管理员管理。 3-4-2 后台参加者用例图 3.5 状态图 前台整个点餐流程如图3-5所示: 3-5 前台点餐状态图 第四章 数据库设计 4.1 E-R图设计 针对前台点餐系统的数据库设计与探讨,绘制出了系统前台主要参加实体对象的实体-联系图,如图4-1所示: 4-1 前台主体E-R图 4.2 数据库表设计 数据库由MySQL数据库管理系统建立并维护,命名为ordering_system。由customer、category、product、order_item、order_shopping_item、review、zixun、permission、role、role_permission、user、user_role共12张表组成。各表中的数据结构如下: 顾客表(customer) 字段名 数据类型 范围(长度) 约束 备注 id int 11 主键 唯一标识,自增 name varchar 100 非空 用户名 password varchar 100 非空 密码 address varchar 100 买家地址 phone varchar 11 买家手机号码 status int 1 只能取值0或者1(0:一般用户、1:会员) 状态,默认取值为0 4-2-1 顾客表 分类表(category) 字段名 数据类型 范围(长度) 约束 备注 id int 11 主键 唯一标识,自增 name varchar 100 非空 分类名 4-2-2 分类表 美食表(product) 字段名 数据类型 范围 约束 备注 id int 11 主键 唯一标识,自增 name varchar 50 非空 美食名称 price float (10,2) 价格 zan int 11 点赞数 number int 11 销售量 status int 1 只能取值0或者1(0:下线、1:上线) 状态,默认取值为1 imageurl varchar 100 美食图片url miaoshu varchar 100 美食描述 cid int 11 外键 分类id bid int 11 外键 商家id 4-2-3 美食表 订单表(order_item) 字段名 数据类型 范围 约束 备注 id int 11 主键 唯一标识,自增 code varchar 255 非空 订单编号 address varchar 255 非空 收货地址 status int 1 只能取值0、1、2、3(0:未支付、1:正在配送、2:已配送、3:已收货) 状态,默认取值为0 cstid int 11 外键 顾客id 4-2-4 订单表 订单美食单项表(order_shopping_item) 字段名 数据类型 范围 约束 备注 id int 11 主键 唯一标识,自增 pid int 11 外键 美食id oid int 11 外键 订单id cstid int 11 外键 顾客id number int 11 非空 美食数量 4-2-5 订单美食单项表 评论表(review) 字段名 数据类型 范围 约束 备注 id int 11 主键 唯一标识,自增 content varchar 255 非空 评论内容 cstid int 11 外键 顾客id pid int 11 外键 美食id createtime datetime 发布时间 4-2-6 评论表 资讯表(zixun) 字段名 数据类型 范围 约束 备注 id int 11 主键 唯一标识,自增 content varchar 255 非空 资讯内容 cstid int 11 外键 顾客id status int 1 只能取值0、1、(0:未通过、1:通过) 审核状态,默认取值为0 fabudate datetime 发布时间 4-2-7 资讯表 操作权限表(permission) 字段名 数据类型 范围 约束 备注 id int 11 主键 唯一标识,自增 name varchar 100 非空 操作权限名字 desc varchar 255 权限描述 url varchar 255 可访问文件夹url 4-2-8 操作权限表 角色表(role) 字段名 数据类型 范围 约束 备注 id int 11 主键 唯一标识,自增 name varchar 100 非空 角色名 desc varchar 100 角色描述 4-2-9 角色表 角色权限表(role_permission) 字段名 数据类型 范围 约束 备注 id int 11 主键 唯一标识,自增 rid int 11 外键 角色id pid int 11 外键 权限id 4-2-10 角色权限表 商家表(user) 字段名 数据类型 范围 约束 备注 uid int 11 主键 唯一标识,自增 name varchar 100 非空 管理员名称 password varchar 100 非空 管理员密码 status int 1 只能取值0、1、(0:停用、1:启用) 状态,默认取值为1 address varchar 100 非空 商家地址 phone varchar 11 非空 商家联系电话 lasttime datetime 最终登录时间 4-2-11 商家表 用户角色表(user_role) 字段名 数据类型 范围 约束 备注 id int 11 主键 唯一标识,自增 uid int 11 外键 用户id rid int 11 外键 角色id 4-2-12 用户角色表 第五章 系统模块具体设计 5.1 前台模块设计 5.1.1 用户注册 游客状态下只拥有查看美食分类列表,搜寻美食,查看美食详情,查看常见问题这4个界面的访问权,想访问其它界面的话须要进行用户登录,在登录之前假如没有账号则须要进行注册操作。注册界面如下,须要输入用户名、密码、收货地址、手机号才能注册胜利。 5-1-1 注册界面 5.1.2 用户登录 用户登录只须要输入用户名和密码即可进行登录。 5-1-2 登录界面 5.1.3 美食搜寻 用户假如想要快速了解平台上是否有相关美食,则可以依据关键字在搜寻框中去匹配并查找相关美食列表,这个功能可以便利用户快速定位美食,省去搜寻美食所花费的时间。 5-1-3 美食搜寻界面 5.1.4 美食订购 进入美食详情界面,可以看到美食的具体介绍,包括美食信息,美食价格,美食评价,美食所属商家等信息,选择美食订购数量之后,可以选择马上购买或者加入购物车。之后在支付界面填写相关收货信息,才可以下单胜利。 5-1-4(1) 美食详情界面 5-1-4(2) 美食支付界面 5.1.5 订单详情 用户下单胜利之后,点击“我的订单”,可以在订单详情界面查看自己的订单状态。 5-1-5 我的订单界面 5.1.6 用户评论 完成订单之后,用户可以在订单详情界面点击“评价”按钮进行美食评价,评价完之后可以在该美食详情界面“评价”板块中查看到自己的评价。 5-1-6(1) 美食评价界面 5-1-6(2) 美食评价列表 5.1.7 用户注销 用户点击系统界面右上角“退出”按钮,即可退出登录状态,并返回到点餐首界面。 5-1-7 点餐首界面 5.1.8 校内资讯 校内资讯板块主要是面对全体师生群众,供应校内最新的一些资讯,帮助学校全体群众快速驾驭校内的一些最新动态。这一板块每一位登录用户都拥有发布资讯的权限,但须要经过后台超级管理员严格的审核通过之后,才可以在校内资讯板块中进行显示。 5-1-8 校内资讯界面 5.1.9 常见问题 常见问题板块主要是对点餐用户的一些常见问题进行总结归纳,以让用户针对系统的一些制度有更深一步的了解。 5-1-9 常见问题界面 5.2 后台模块设计 5.2.1 用户管理 超级管理员拥有对用户的管理权限,针对用户可以进行会员的设置,或者用户的删除操作。 5-2-1 后台用户管理界面 5.2.2 评论管理 超级管理员可以针对一些含有恶意攻击的评论进行删除操作,以净化系统的平台环境。 5-2-2 后台评论管理界面 5.2.3 管理员管理 管理员管理分为三大部分:角色管理、权限管理、管理员列表。 角色管理主要是设置系统角色的一些相关权限,包括角色的增加和删除,简洁来说,就是可以自定义某个角色,并让该角色拥有某一些自定义的权限。 5-2-3(1) 后台管理员管理-角色管理界面 权限管理则是针对系统全部权限项的相关访问节点进行设置,包括权限项的增加和删除操作。也就是说可以依据实际业务需求进行某些节点的权限限制。 5-2-3(2) 后台管理员管理-权限管理界面 管理员管理是超级管理员所属权限,依据实际须要,申请者可以向超级管理员申请后台账号,超级管理员依据申请者的须要增加对应角色的账号并给予申请者。除此之外,超级管理员也拥有对管理员的操作权(删除、停用账号,修改角色)。 5-2-3(3) 后台管理员管理-管理员列表界面 5.2.4 资讯管理 资讯管理是超级管理员针对前台校内资讯板块的一个管理平台,供管理员对来自前台的资讯进行一个审核操作。对于一些已经审核并且已经在前台显示的资讯,管理员照旧拥有其删除权限。 5-2-4 后台资讯管理界面 5.2.5 美食管理 美食管理则主要是针对美食列表和美食分类的管理操作,在美食列表中,管理员可以针对美食进行一个统一的管理,包括美食的全部相关属性的设置,如美食名称,单价,美食描述,美食分类,是否上线等。 5-2-5(1) 后台美食管理-美食列表界面 美食分类管理中,是对全部的分类项的管理操作,管理员可以随时增加或者删除一些分类。 5-2-5(2) 后台美食管理-美食分类管理界面 5.2.6 订单管理 管理员在后台订单列表界面可以看到相关订单数据,包括详细每一个订单项(美食名、价格、数量),以及设置每一个订单的配送状态。 5-2-6 后台订单管理界面 第六章 系统测试 6.1系统测试的重要性 系统测试是系统上线之前须要进行的一个必要步骤,假如一个系统没有经过测试阶段就上线运营,那么在实际的业务当中可能会因为系统的错误而让一些相关企业遭到严峻的经济损失,比如之前的星巴克由于POS机的系统故障而导致美国和加拿大超过60%的店铺被迫关闭,造成了星巴克严峻的客户流失。所以一个系统从开发到上线的这一阶段,肯定须要经过严格的测试流程,在测试过程中尽早捕获一些系统问题,并调试好相关的代码逻辑,确保系统在上线之后能够正常运行。 6.2测试环境 处理器:Intel(R)Core(TM) i5 内存:12G 操作系统:Windows10 JDK版本:1.8 Tomcat版本:8.5 Mysql版本:5.7 6.3 功能测试 注册功能测试: 针对系统的注册功能进行测试,测试用例如下表6-3-1所示: 测试编号 测试数据 测试结果 系统提示 01 用户名:xiaoming 密码:zrf1568 收货地址:广东省佛山市禅城区御璟上院 手机号:15017765258。 注册胜利 注册胜利,跳转至提示“注册胜利”界面。02 用户名:不填 密码:85476a。注册失败 注册失败,提示“账号不能为空”。03 用户名:zhaoliu 密码:不填。注册失败 注册失败,提示“账号不能为空”。6-3-1 注册测试 登录功能测试: 针对系统的登录功能进行测试,测试用例如下表6-3-2所示: 测试编号 测试数据 测试结果 系统提示 01 用户名:mdy 密码:999。登录胜利 登录胜利,跳转到首页。02 用户名:zhangsan 密码:888。登录失败 登录失败,提示“用户名或密码错误!” 03 用户名:li4 密码:abc。登录失败 登录失败,提示“用户名或密码错误!” 6-3-2 登录测试 美食搜寻功能测试: 美食搜寻功能可以便利用户快速定位到自己的心仪美食,测试用例如下表6-3-3所示: 测试编号 测试数据 测试结果 系统提示 01 搜寻框输入“蛋糕”。搜寻胜利 胜利显示带有“蛋糕”二字的美食产品。02 搜寻框输入“炸酱面”。搜寻失败 提示没有搜寻到相关美食。03 搜寻框不输入任何字符,干脆搜寻。搜寻胜利 显示全部美食产品。6-3-3 美食搜寻测试 马上购买功能测试: 购买测试主要是检测用户是否处于登录状态,测试用例如下表6-3-4所示: 测试编号 测试数据 测试结果 系统提示 01 登录后,点击系统首界面“香辣鸡腿堡”下方的“马上购买”。 购买胜利 胜利跳转至“购买”详情界面。 02 登录后,点击 “香辣鸡腿堡”的美食详情界面下方的“马上购买”。购买胜利 胜利跳转至“购买”详情界面。03 不登录,点击系统首界面“香辣鸡腿堡”下方的“马上购买” 购买失败 弹窗显示“请先登录”字样。04 不登录,点击 “香辣鸡腿堡”的美食详情界面下方的“马上购买”。购买失败 弹窗显示登录入口。6-3-4 购买测试 添加购物车功能测试: 添加购物车主要是检测用户是否处于登录状态,测试用例如下表6-3-5所示: 测试编号 测试数据 测试结果 系统提示 01 登录后,点击首界面“红豆布丁烧奶”,跳出弹窗后,选择数量2,再点击“加入购物车”。加入购物车胜利 弹窗显示“加入购物车胜利”字样。02 登录后,点击 “红豆布丁烧奶”的美食详情界面下方的 “加入购物车”。加入购物车胜利 弹窗显示“加入购物车胜利”字样。03 不登录,点击首界面“红豆布丁烧奶”,跳出弹窗后,选择数量2,再点击“加入购物车”。加入购物车失败 弹窗显示“请先登录”字样。04 不登录,点击 “红豆布丁烧奶”的美食详情界面下方的 “加入购物车”。加入购物车失败 弹窗显示登录入口。6-3-5 添加购物车测试 支付功能测试: 支付功能则主要验证用户的收获信息和支付方式是否填写或者勾选,测试用例如下表6-3-6所示: 测试编号 测试数据 测试结果 系统提示 01 收货信息姓名:小白, 手机号码:17765602111, 收货地址:广东省佛山市南海区广东东软学院23栋,勾选“微信支付”和“我已阅读并接受条款条件”。下单胜利 胜利跳转至“订单详情”界面。02 收货信息姓名:小黑, 手机号码:17765602458, 收货地址:广东省佛山市南海区广东东软学院15栋,勾选“支付宝支付”,但不勾选 “我已阅读并接受条款条件”。下单失败 弹窗提示请勾选“我已阅读并接受条款条件”。03 收货信息姓名:小白, 手机号码:17765602111, 收货地址:不填,勾选“微信支付”和“我已阅读并接受条款条件”。下单失败 弹窗提示“收货地址不能为空”。04 收货信息姓名:小黑, 手机号码:17765602458, 收货地址:广东省佛山市南海区广东东软学院15栋,勾选 “我已阅读并接受条款条件”,但不勾选“支付宝支付”。下单失败 弹窗提示“请选择一种支付方式”。6-3-6 支付功能测试 第七章 结论 历经几个月的时间,至此算是完成整个项目的开发,本项目从无到有,从最起先的项目构思动身,一步一步跟着思路走,先完成对整个项目的需求功能分析。接着进行数据库的设计和实现,数据库设计的好与坏是关乎整个系统能够正常运行的关键,一旦前期的数据库设计出现了问题,会对后期程序的内容逻辑造成肯定的设计困扰。开发过程则须要耐性,跟着功能动身,进行相关模块化设计,模块与模块之间尽量做到低耦合。最终,功能测试是对整个系统运行概况的一个评估,也是在实际开发中特别有必要的一步,它为系统上线后能够正常运行供应了特别重要的保障。当然,自己在开发过程中不行避开会遇到一些开发难点,这时候须要自己去网上查找相关资料或者视频去补足自己的欠缺,但凡每一个难点被自己攻克后,会让自己在后续遇到难点的问题上,变得愈加从容自信。这期间,给我的最大感受就是模块化开发特别重要,模块化开发可以让系统分模块进行操作,按需加载,减缓服务器的负担。其次,模块化开发也可以提高代码的复用性,便利系统后期的维护。这次系统设计虽然大体功能上都已经实现了,但由于个人实力和时间上的关系,还存在着有一些功能上的欠缺,在某些学问方面,本人依旧还存在着肯定的不足,至此,今后假如想从事相关行业的工作,则须要我更加好好学习,因为时代在跟进,系统也再不断迭代发展,假如自己还不努力学习的话,只会让自己在社会中逐步落伍,在人生发展道路上变得更加被动。 参 考 文 献 1 BruceEckel.On Java 8. MindView LLCM, 2017年6月 2 明日科技.Java从入门到精通(第5版)M.清华高校出版社.2019 3 李洋. SSM框架在Web应用开发中的设计与实现 J. 计算机技术与发展, 2016(12):190-194,共5页. 4 张锦煌, 吴丽娟, 梁舒婷. 基于SSM整合框架开发的项目管理系统J. 电脑学问与技术, 2015(11):1