摘 要
当今社会进入了科技进步、经济社会快速发展的新时代。国际信息和学术交流也不断加强,计算机技术对经济社会发展和人民生活改善的影响也日益突出,人类的生存和思考方式也产生了变化。传统购物方式采取了人工的管理方法,但这种管理方法存在着许多弊端,比如效率低下、安全性低以及信息传输的不准确等,同时由于购物管理信息系统中会形成众多的个人文档和信息系统数据,通过人工方法对购物信息进行集中管理会形成检索、更改和维护等较为麻烦的管理问题,同时由于当下人民群众对购物管理的需求也日益高涨,各级单位需要继续开展全新的改革以满足时代的需求。根据此问题,研发一套网上订餐系统,既能够大大提高信息的检索、变更与维护的工作效率,也能够方便信息系统的管理运用,从而减少信息管理成本,提高效率。
该网上订餐系统采用B/S架构、前后端分离以及B/C模型进行设计,并采用Java语言以及 SpringBoot框架进行开发。本系统主要设计并完成了用户注册、登录,购买美食过程、个人信息修改等,管理员对用户信息、美食分类、美食信息、系统信息、订单信息等功能,进行维护与管理。该系统操作简单,界面设计简单,不仅能基本满足目前网上网上订餐系统的日常管理工作,而且能有效降低人员成本和时间成本,为网上网上订餐系统工作提供方便。
关键词:网上订餐系统;B/S 架构;SpringBoot框架
Abstract
Today’s society has entered a new era of technological progress and rapid economic and social development. International information and academic exchanges have also been continuously strengthened, and the impact of computer technology on economic and social development and the improvement of people’s lives has become increasingly prominent. Human survival and thinking methods have also undergone changes. The traditional shopping method adopts manual management methods, but this management method has many drawbacks, such as low efficiency, low security, and inaccurate information transmission. At the same time, due to the formation of a large number of personal documents and information system data in the shopping management information system, centralized management of shopping information through manual methods can result in cumbersome management problems such as retrieval, modification, and maintenance, At the same time, due to the increasing demand of the people for shopping management, units at all levels need to continue to carry out new reforms to meet the needs of the times. Based on this issue, developing an online ordering system can greatly improve the efficiency of information retrieval, change, and maintenance, as well as facilitate the management and application of information systems, thereby reducing information management costs and improving efficiency.
The online ordering system is designed using a B/S architecture, front-end and back-end separation, and a B/C model, and is developed using Java language and the SpringBoot framework. This system mainly designs and completes user registration, login, food purchasing process, personal information modification, etc. The administrator maintains and manages functions such as user information, food classification, food information, system information, and order information. The system is easy to operate and has a simple interface design, which not only meets the daily management needs of the current online food ordering system, but also effectively reduces personnel and time costs, providing convenience for the work of the online food ordering system.
Keywords: online ordering system; B/S architecture; SpringBoot framework
1 概 述
1.1 课题研究背景
来到21世纪的今天,伴随着信息技术的飞速发展,已经深入并且影响着我们的生活,伴随着网络、通信技术的突破性进展,电子商务即网上交易也就是我们常说的网购得以蓬勃发展。而网上订餐系统作为一种全新的消费模式已成为一个极具潜力的行业,它以多样化的方式为人们的购物提供了便利,但是传统线下购物的方式存在购买费时、费劲、种类不全和价格不合理等问题,这导致了传统的线下购物方式没有移动端的购物方式来的优势。在这一背景下,当前的主要销售通道为传统的线下门店销售与互联网平台的线上销售相结合。目前,线上销售与线下销售之间存在着一定的相同与不相同[1]。
在未来的电子商务竞争中,将会有更多的传统销售门店会转移到互联网销售中, 从而进而形成主流电子商务发展趋势。以当前市场经济趋势而言, 各行各业均会受到电子商务的影响, 并从中挖掘更多的商机, 因此传统实体经济向互联网转型已经成为一种必然的趋势, 在移动网络环境下, 商家将获得更广泛的市场, 进而使发展的市场平台更加高效。从市场角度而言, 现电子商务的主要人群为青年群体, 这一群体人数众多, 且消费能力强, 为移动电子商务的发展提供了更为稳定的市场资源, 这些条件都为传统商家转型为互联网商家创造了良好条件[2]。
移动电子商务其中最为明显的特点便在于其便利性,在技术的发展中,为所有消费者提供的便利性是其他消费模式无法比拟的。在消费者眼中移动消费方式比传统的消费方式有着更加优质的服务。就目前移动电子商务的发展趋势来看,消费者想要更加便利的方式而移动电子商务恰好满足这一条件。但也有其缺陷,商品由商家流通至消费者需等待商品的运输时间。在未来或许能够达到一个相对高效的运作模式[3]。
1.2 课题研究意义
(1)网上订餐系统伴随着计算机网络的飞速发展而实现能巧妙的融入我们的日常中,在我们的日常中随着使用网购系统的频率提高,我们的日常生活方式也将得到改善[4]。
(2)网上订餐系统不仅仅只是表面中的“网购”,它能带来更加广阔的交易环境:使我们不在局限与人与人面对面的接触式交易,能通过互联网的方式随时随地线上交易;它能带来更加广阔的消费市场:使我们能接触到网络所能达到的地方,可以在全球任意一家商家购物;它能带来更加丰富的商品,在网络普及的现在我们能接触到比传统购物更加多的商品种类,来提高我们的消费质量;它能带来更加实惠的价格:网购能极大程度的减少卖家到买家手中的流通环节,从而减少中间差价让价格更加实惠。而网上订餐系统是更加符合时代的潮流,能大大提高消费者的消费体验[5]。
1.3 课题研究内容
本系统结合现今网上订餐系统的功能模块以及设计方式进行分析,使用Java语言和 SpringBoot框架进行开发设计,具体研究内容如下:
(1)用户通过注册登录前台系统可以个人信息修改,对美食信息、美食资讯、购物车等进行操作[6]。
(2)管理员登录系统后,可以对个人信息进行修改,对用户信息、美食分类、美食信息、系统和订单等进行管理;
2 系统开发环境及相关技术
2.1 系统开发环境
本管理系统采用的集成开发环境为Eclipse,使用Java等语言及 SpringBoot框架进行开发,其中硬件环境和软件环境如下:
(1)硬件环境
处理器:Intel® Core™ i5-7400 CPU @ 3.00GHz 3.00GHz
内存:8GB
(2)软件环境
操作系统:windows 10 64位操作系统
开发工具:Eclipse
2.2 系统开发技术
网上订餐系统采用B/S(Browser/Server)架构和MVC模型进行设计开发。在B/S架构下,用户在浏览器端进行使用,主要工作通过服务器端进行实现,用户通过网站进行访问大大节约了成本。本系统使用Java等语言同时运用了 SpringBoot框架进行开发,使用MySQL进行数据存储。
2.2.1 Java编程语言
Java语言作为现在主流编程语言之一,就是因为它有很多自己的特点和优势。
Java语言具有以下几个特点:
(1)跨平台性
平时所说的一次编译,到处执行,指的就是这个跨平台性。Java的源代码编译后会生成字节码文件,这些文件可以被Java虚拟机执行,得到想要的结果。在设备上安装对应的虚拟机,Java的字节码文件就可以运行。
(2)面向对象
Java是一个面向对象的编程语言。面向对象是指把属性和方法进行封装,通过创建的对象调用里面的方法,实现一些功能。
(3)多线程
Java是支持多线程的,它允许在一个程序中同时开启多个线程,同时处理多个任务,这样可以提高它的效率。
Java语言对于开发工具要求不高,有专业的编程工具Eclipse会更顺利编程,但是,没有专业的编程软件,用记事本也能进行编辑。
2.2.2 SpringBoot框架介绍
随着Java技术发展,为了简化开发而诞生了众多框架。科技是随着人们追求简单且高效的技术的渴望而发展的,在这种情况下,SpringBoot框架应运而生。
SpringBoot是一种轻量级的、非侵入式的Java/JavaEE应用框架。它的出现大幅度的简化了开发步骤。SpringBoot是具有简单高效、轻量级、依赖注入和面向切面编程而深受Java开发程序员的喜爱。现在的众多程序员都使用spring来简化开发。
2.2.3 MySQL数据库
数据库在软件项目中扮演着操作管理数据的角色同时还能够保证数据的独立性、一致性和安全性,并为系统访问数据提供有效方式不仅如此数据库还能大大减少程序员开发程序时间。在日常能够接触实用的一般有两类数据库,一类是以(Oracle,DB2,SQL Server,MySQL )为代表的关系型数据库和以(NoSql、MongeDB)为代表的非关系型数据库,两类数据库各有各的优缺点。其中非关系型数据库又分为网络数据库和层级数据库。网络数据库是指在计算机网络系统中应用数据库技术然后借助网络技术将存储于数据库中的大量信息及时发布出去;在成熟的数据库技术的帮助下,计算机网络实现了对网络中的各种数据的有效管理,用户与网络中的数据库数据交互也借此得以进行。IMS也是最早研制成功的数据库系统。关系数据结构、关系操作集合、关系完整性约束构成了关系模型。作为数据库另外一种区分方式的存储介质被大家分为磁盘和内存这 两种。例如:关系型数据库就存储在磁盘中,非关系型数据库则存储在内存中。典型的关系型数据库有:Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL、SQLite。小型关系型数据库:Microsoft Access,SQLite;中型关系型数据库:SQL Server,Mysql;大型关系型数据库:Oracle,DB2。
大家常用的其他关系形数据库系统大多是MySQL AB公司开发的,其中MySQL也是由这家开发的,所应用的分布式数据库管理系统是客户机/服务器体系结构得益于此结构,而且用这个系统建造的数据库具有很强的适用性,用C和C++编写的系统让他拥有很强的适用性所以他可以在大部分操作系统上使用并能和php结合。不同的API函数针对不同的语言(C,C++,JAVA等)来处理不同数据;为了更好地支持多CPU多线程通过使用核心线程来实现;提供的存储机制分为事务和非事务存储机制;MySQL采用双重许可,不管是从MySQL AB公司获得正式的商业许可又或是许可条款下以免费软件或开放源码软件的方式使用MySQL软件都是被允许的。
MySQL作为数据库拥有很多优点,其中由于是开放源码,所以使用成本特别低,而它体积小的特点决定了速度快的特性。因此,MySql具有开放性,多线程支持多种API,可跨数据库连接,国际化,数据库体积巨大等特点。简单的来说 ,MySql是一个开放的、快速的、多线程的、多用户的数据库服务器。
选用MySQL作为数据库的其中一个原因就是支持多线程,支持多线程的特点为利用系统资源提供了便捷并因此大大提高了系统运行速度和效率,而且连接数据库的方式多样包括但不局限于TCP/IP、ODBC和JDBC等途径;但是没有东西是完美无缺的,即便MySQL也如此,虽说它有着众多优点但其功能不够强大,规模也相对较小,无法应对大型数据哭的处理。但是对于本系统来说,选用MySQL作为数据库,其功能性能已绰绰有余,如果要进行二次开发的数据库表结构空间的扩展也是完全可行的。综上所述,MySQL是作为本系统数据库的最优选择。
2.2.4 B/S结构
B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作[10]。
B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:
(1)跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间。
(2)低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少。
2.2.5 Vue简介
VUE是一套用于构建用户界面的渐进式框架。为了实现前后端分离的开发理念,开发前端 SPA(single page web application) 项目,实现数据绑定,路由配置,项目编译打包等一系列工作的技术框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动.
3 系统需求分析
在当今的社会生活中,互联网已经变得非常普遍和重要。充分利用互联网大数据等技术可以解决很多问题。目前,网上订餐系统也面临着自身的问题。根据这一普遍现象,网上购物制度的出现需求巨大。该系统可以很好地解决这些问题。系统中这两类用户的数据在系统中非常关键,因此系统数据应该被组织起来,因为数据是以某种格式存储的,而不是无序的。其概念是,它可以根据长期稳定的格式在计算机内存中共享。数据库管理系统主要用于保存、修改和添加索引数据以及设置数据库。为了确保系统数据管理的顺利进行,一些有能力的处理器可以在不需要专业人员处理的情况下管理数据。创建数据表时,可以调整、重新组织和重建数据表中的数据,以确保数据可靠性。在数据库系统设计中,MySQL主要用于实现数据的集中管理。各方面表现良好[7]。
2.1 可行性分析
根据网上订餐系统的功能,通过对经济效益、技术难点和管理方法进行全面的可行性分析,提供准确的可行性依据。以下是本系统的可行性分析:
(1)经济可行性
使用了免费版的Eclipse节省了开发成本,在购买服务器后部署项目便能通过浏览器进行访问[8]。
(2)技术可行性
本管理系统采用B/S架构和 B/C模型进行设计,通过分层分包的方法,有利于日常的维护,同时降低了代码之间的耦合。
(3)管理可行性
本管理系统要求管理难度低,只需要有管理员就能够对个人中心、用户信息、美食分类、美食信息、系统和订单等进行删除、修改和新增操作[9]。
3.2 功能需求分析
网上订餐系统综合网络空间开发设计要求。目的是将订餐通过网络平台将传统管理方式转换为在线上管理,完成网上订餐系统的方便快捷、安全性高、交易规范做了保障,目标明确。网上订餐系统可以将功能划分为用户的使用功能和管理员功能[10]。
(1)、用户关键功能包含用户注册登录,个人信息修改,查看美食信息、美食资讯、购物车等有关信息,并进行详细操作。用户用例如下:
图3-1 用户用例图
(2)、管理员的权限是最高的,可以对系统所在功能进行查看,修改和删除,包括用户功能。管理员用例如下:
图3-2管理员用例图
3.3 系统流程分析
3.3.1 登录流程
每个用户都有专属的密码和账号,在输入合法的账号和密码之后即可进入系统。登录流程如图3-3所示:
图3-3 登录流程图
3.3.2 添加信息流程
管理层人员有添加角色和用户信息等功能。添加信息流程如图3-4所示:
图3-4 添加信息流程图
3.3.3 收藏信息流程
在网上订餐系统中,用户登录后,浏览美食信息详情界面能进行信息收藏,用户收藏信息的流程图如图3-5所示:
图3-5 用户收藏信息流程图
4 系统设计
4.1 功能模块设计
网上订餐系统按照权限的类型进行划分,分为用户和管理员两个模块。用户模块主要实现个人信息修改、对美食信息、美食资讯、购物车等信息进行操作,增强了用户的操作体验。管理员模块主要针对整个系统的管理进行设计,提高了管理的效率和标准。系统的总体模块设计如下图所示:
图4-1 系统总体模块设计
4.2 系统数据库设计
4.2.1 数据库系统
本系统采用MySQL来进行数据库的管理。MySQL数据库具有体积小、速度快、成本低等优点。具备同时处理数千万条记录,实现大型数据库的高并发读写和高效读写需求。
4.2.2 数据库概念设计
概念模型用于对信息世界建模,并与指定的数据库管理系统分离。它有助于将真实世界的事物抽象为适合于数据库管理系统的数据库模型。人们倾向于将现实世界抽象为信息世界,再把信息世界变成机器世界。也就是说,将现实世界的目标抽象成独立于专用计算机软件和专用数据库管理系统的信息结构的数据模型,然后将物理模型转化为适合电子计算机的数据库管理系统。事实上,数据模型是从真实世界到机器世界的中间层。
信息世界的基本要素包括实体和关联。现实存在且彼此可区别的事物称为实体。实体可以是实际的人、事或物,还可以是抽象化的概念或联络。以下是对部分主要的关键实体如下:
用户信息实体体属图如下所示。
图4-2用户信息实体属性图
美食信息实体属图如下所示。
图4-3美食信息实体属图
订单信息实体属图如下所示。
图4-4订单信息实体属图
根据分析,系统中主要存在实体之间的E-R图如图4-5所示。
图4-5 系统E-R图
4.2.3 数据表设计
本设计根据数据表管理系统的具体流程进行管理,方便用户和管理员对数据的添加、删除、修改和查询等操作。
4.2.4 数据表的建立
系统采用MySQL对数据库进行操作,数据库管理操作简单,数据处理能力强。数据表建立如下:
表4-1:美食信息评论表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
avatarurl longtext 4294967295 头像
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容
表4-2:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-3:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuming varchar 200 用户名
xingming varchar 200 姓名
mima varchar 200 密码
xingbie varchar 200 性别
touxiang longtext 4294967295 头像
shoujihao varchar 200 手机号
money float 余额 0
表4-4:购物车表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
tablename varchar 200 商品表名 meishixinxi
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 图片
buynumber int 购买数量
price float 单价
discountprice float 会员价
goodtype varchar 200 商品类型
表4-5:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-6:地址
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
address varchar 200 地址
name varchar 200 收货人
phone varchar 200 电话
isdefault varchar 200 是否默认地址[是/否]
表4-7:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP
表4-8:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3
表4-9:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3
表4-10:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture longtext 4294967295 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注
表4-11:订单
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
orderid varchar 200 订单编号
tablename varchar 200 商品表名 meishixinxi
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 商品图片
buynumber int 购买数量
price float 价格 0
discountprice float 折扣价格 0
total float 总价格 0
discounttotal float 折扣总价格 0
type int 支付类型 1
status varchar 200 状态
address varchar 200 地址
tel varchar 200 电话
consignee varchar 200 收货人
remark varchar 200 备注
logistics longtext 4294967295 物流
goodtype varchar 200 商品类型
表4-12:美食资讯
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容
表4-13:美食信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
caipinmingcheng varchar 200 菜品名称
meishifenlei varchar 200 美食分类
fengmian longtext 4294967295 封面
hunsu varchar 200 荤素
fenliang varchar 200 分量
xiangqing longtext 4294967295 详情
onelimittimes int 单限
alllimittimes int 库存
clicktime datetime 最近点击时间
clicknum int 点击次数 0
price float 价格
表4-14:美食分类
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
meishifenlei varchar 200 美食分类
5 系统实现
5.1前台用户系统模块实现
当用户进入系统前台进行相关操作前必须进行注册、登录,用户注册、用户登录界面如图5-1所示:
图5-1 用户注册、用户登录界面
当用户打开系统的网址后,首先看到的就是首页界面。在这里,用户能够看到网上订餐系统的导航条显示首页、美食信息、美食资讯、购物车、个人中心等。系统首页界面如图5-2所示:
图5-2 系统首页界面
在美食信息页面的搜索栏输入菜品名称、美食分类、价格,进行查询,然后可以查看菜品名称、美食分类、封面、荤素、分量、单限、库存、价格、点击次数等信息,并且可以进行添加到购物车、立即购买、评论或收藏等操作,页面如图5-3所示:
图5-3美食信息详细页面
用户点击美食资讯:在美食资讯页面的搜索栏输入标题,进行查询,还可以查看标题、简介、发布时间、美食资讯等内容,页面如图5-4所示:
图5-4美食资讯详细页面
购物车:用户将想要购买的商品加入购物车,加入购物车后可以增减数量、删除、点击购买,可一键清除失效商品,页面如图5-5所示:
图5-5购物车详细页面
在个人中心页面可以更新个人详细信息,还可以对我的订单,我的地址和我的收藏进行详细操作;如图5-6所示:
图5-6 个人中心界面
5.2后台管理员模块实现
管理员登录,在登录页面正确输入用户名和密码后,点击登录操作,如图5-7所示。
图5-7 管理员登录界面
管理员进入主页面,主要包括对首页、个人中心、用户管理、美食分类管理、美食信息管理、系统管理、订单管理等进行操作。管理员主页面如图5-8所示:
图5-8 管理员主界面
管理员点击用户管理,在用户管理页面的搜索栏输入用户名、姓名、性别、头像、手机号,然后进行查询、新增或删除用户信息等操作。如图5-9所示:
图5-9用户管理界面
管理员点击美食分类管理,在美食分类管理页面的搜索栏输入美食分类,然后进行查询、新增或删除美食分类等操作。如图5-10所示:
图5-10美食分类管理界面
管理员点击美食信息管理,在美食信息管理页面的搜索栏输入菜品名称、美食分类、封面、荤素、分量、单限、库存、价格,然后进行查询或新增、删除美食信息等操作。如图5-11所示:
图5-11美食信息管理界面
管理员点击系统管理,在系统管理页面的搜索栏输入关于我们、系统简介、轮播图管理、美食资讯,然后进行查询或删除系统信息等操作。如图5-12所示:
图5-12系统管理界面
管理员点击订单管理,在订单管理页面的搜索栏输入订单编号、商品名称、商品图片、购买数量、价格、折扣价格、总价格、折扣总价格、支付类型、状态、地址、电话、收货人、备注、商品类型、下单时间,然后进行查询或删除订单信息等操作。如图5-13所示:
图5-13订单管理界面
6 系统测试
软件测试是一系列过程活动的总和,本系统采用黑盒测试,用于检测用户和管理员两个角色在操作中存在的问题。黑盒测试注重于测试软件的功能需求[11]。
6.1软件测试过程
软件测试是软件设计的收尾阶段,它是贯穿整个设计过程的,是一个巨大的任务。软件测试需要对程序所有的部分进行测试。且对每个部分的测试都是不一样的,需要在进行测试之前将它们分为以下几个阶段:
软件测试是软件设计的最后阶段,它贯穿于整个设计过程,是一项巨大的任务。软件测试需要测试程序的所有部分[12]。每个部分的测试是不同的,在测试前需要分为以下几个阶段:
(1)模块测试
它是一种检查软件程序代码的测试。用于软件的最小单元部分。单元测试分为手动测试和动态测试。为了保证程序算法的正确性,静态检测应规范程序的逻辑性、规范性和正确性。这一步是检测尽可能多的错误。动态检测是通过比较实际结果和期望结果来发现误差。
(2)集成测试
集成测试是在单元测试的基础上对系统各个功能模块进行测试。任何软件设计都会有集成阶段,因此集成测试是软件测试过程中必不可少的一部分。在集成测试中,由于测试是在各个模块之间进行的,所以在测试过程中可能没有发现问题,但会暴露整个测试。同时,在进行集成测试时要注意模块连接时的数据丢失。还要注意,虽然单个模块的错误可能很少,但它们可以拼凑在一起,对系统产生重大影响。
(3)系统测试
系统测试紧随集成测试之后。系统测试将通过集成测试的部分作为整个系统的一部分。与电子设备的各种软硬件一起,通过实际操作来检测,在模拟的实际环境中是否存在误差。需要将系统测试与计划的理想情况进行比较,并找出与预期不同的地方。通过设计师的分析确定如何修改。在软件的实际操作过程中,会出现很多意想不到的错误,测试人员可能无法在第一时间解决问题。因此,系统测试应尽量在实际操作下进行,以达到更好的测试目的[13]。
(4)验收测试
验收测试是系统设计和发布前的最后测试,需要了解用户和合作伙伴的需求。并与他们一起完成测试,同时根据他们的需求进行具体的修改,使软件更好地满足这三个需求。
6.2测试用例
本管理系统的登录模块测试,主要包括了密码测试,具体测试情况如下:
(1)密码登录测试
密码登录要求用户输入用户名和密码进行核对,如果用户登录成功,会自动跳转到系统主页,如果登录失败,则会弹出“ 用户名或密码输入有误,请重新输入!”,系统会根据用户不同的角色加载相应的菜单,具体测试用例见表6-1。
表6-1登录测试用例
结 论
通过本次毕业设计对网上订餐系统的设计与实现,让我能够将所学的一个个知识联系起来形成了一个整体,对于整个系统的运行流程有了一个清楚的认识。从前端通过接口请求数据到后端控制层调用业务层再到数据库访问层对数据库进行查找,然后将数据进行封装后一个一个层传输最后到前端以及前端进行显示的过程中,每一个流程都需要仔细的分析调试。在这之间,也遇到了许许多多的困难,走了很多的弯路,但正是因为克服了这些困难,才能开发出这个系统,实现对网上订餐系统信息的电子化管理,提高了网上订餐系统工作的效率。
系统的总体设计已经实现了网上订餐系统的基本功能,但是还有很多地方需要以后进一步改进,比如:
(1)优化UI 设计,并且加入总体模块来完善系统功能。
(2)系统当前只能在网站中使用,若能在App或小程序中使用会更便捷。
(3)系统中未考虑到数据的备份与恢复功能,手动备份耗时耗力并且安全性不好,需要对其进行完善。
致 谢
晃眼间四年大学时光即将过去。当我在完成大学里最后一个任务模块时,我意识到自己将要毕业了,将离开陪伴了自己四年快乐时光的校园。回首四年往事,让我深有感触学校四年的点点滴滴,有太多无法忘记的事事非非。学校的室友,同学,老师,图书馆,教学楼等,这些都是我无法抹去的记忆,已使我的心里很不是滋味。在此我要首先感谢我的指导老师。从最开始的论文选题、分析,老师就根据我们所选的课题提供了参考资料并且帮助我们进行系统的功能分析。他认真的工作态度、辛勤的工作精神,对我的影响深远,当我遇到问题以及疑惑时,老师总能指出问题的所在,让我收获了许多,再次感谢老师对我的帮助,以及还要感谢我的家人和朋友,正因为有了他们的支持,使我今后的人生有了更多的意义。
同时我还要感谢我的室友们。虽然我这几年的生活一直很困难,但是每当我遇到困难或者不开心的时候,他们都会给我建议,让我不难过。每当我生日的时候,他们都会聚在一起为我庆祝。和他们交流之后,我就会走出坏心情,变得快乐。因此,我感谢他们这四年的努力。
时光飞逝,四年的大学生活转眼就要过去了。此时此刻,四年的时光在我的脑海中再次上演。我的舍友、同学、老师,这一刻,我已经止不住的流泪了。我有太多的记忆永远刻在脑子里,我不会忘记他们的点点滴滴。与此同时,我也会积极准备考研,吸取第一次失败的经验,争取在二战中取得好成绩,考上心中理想的学校。我一定会加油的!
参 考 文 献
[1]罗旭.宜宾一网上订餐系统的设计与实现[D].电子科技大学,2020.
[2]吴丽娟. 基于SpringBoot的网上订餐系统设计与实现[D]. 厦门大学, 2019.
[3]陈键.基于java和MySQL的网上订餐系统的设计[J].电脑与信息技术,2020, 06:48-49.
[4]崔炜.基于PowerBuilder网上订餐系统的研究与实现[J].清远职业技术学院学报,2019,06:63-66.
[5]刘立. MVVM 模式分析与应用[J].微型电脑应用, 2020, 8(12): 57-60.
[6]王志任.基于java的开发平台的设计与实现[D].广东工业大学,2019.
[7]刘敏.基于SpringBoot框架网上订餐系统的设计与实现[D].湖南大学,2020.
[8]姜萍.基于MySql的网上订餐系统设计与开发[D].吉林大学,2019.
[9]颜清,苗壮,赖鑫生,等.大数据时代关系数据库MySQL的创新与发展[J].科技风, 2020(20):75-76.
[10]马景娣,田稷.基于J2EE 的科技查新综合信息系统的设计与实现[J].现代图书情 报技术 2019(08):75-80.
[11]张玮.浅析白盒测试和黑盒测试[J].无线互联科技,2020(06):136.