基于Spring Boot、Java与MySQL的网络订餐系统设计与实现

基于Spring Boot、Java与MySQL的网络订餐系统设计与实现

**技术说明:**本文围绕网络订餐系统进行Java Web开发复盘,重点整理Spring Boot后端架构、MySQL数据建模、用户与商家管理、菜品和订单流程、后台管理以及功能测试等技术要点。内容用于Web系统设计、数据库建模和业务流程实现方法交流,不涉及餐饮服务推广或商业宣传。

摘 要

时代在飞速进步,每个行业都在努力发展现在先进技术,通过这些先进的技术来提高自己的水平和优势,网络订餐系统当然不能排除在外。网络订餐系统是在实际应用和软件工程的开发原理之上,运用Java语言以及SpringBoot框架进行开发。首先要进行需求分析,分析出网络订餐系统的主要功能,然后设计了系统结构。整体设计包括系统的功能、系统总体结构、系统数据结构和对系统安全性进行设计;最后要对系统进行测试,还要对测试的结果进行总结和分析,为以后系统的维护提供方便,也为以后类似系统的开发提供参考和帮助。这种个性化的网络系统管理更重视相互协调和管理合作,能激发管理者的创造性和主动性,这对网络订餐系统来说非常有益。

关键词:网络订餐,SpringBoot,Mysql,Java

Network Meal Ordering System Based on SpringBoot

College of Computer Science and Technology Software Engineering

Ye Kai(202132110148) Tutor:Guo Hongjie

Abstract

In the rapid progress of the times, every industry is trying to develop advanced technology, through these advanced technology to improve their own level and advantages, network meal ordering system of course can not be excluded. Network meal ordering system is developed on the basis of practical application and software engineering development principle, using Java language and SpringBoot framework. First of all, we need to carry on the demand analysis, analyze the main functions of network meal ordering system, and then design the system structure. The overall design includes the function of the system, the overall structure of the system, the data structure of the system and the design of the system security; Finally, to test the system, but also to summarize and analyze the results of the test, for the future maintenance of the system to provide convenience, but also for the future development of similar systems to provide reference and help. This kind of personalized network system management attaches more importance to mutual coordination and management cooperation, which can stimulate managers' creativity and initiative, which is very beneficial to network meal ordering system.

Keywords:Network meal ordering, SpringBoot, Mysql, Java

绪 论

随着社会的快速发展,计算机的影响是全面而深刻的。当前疫情已席卷全球,人们深感不安。在生活中,大家也不断提高了对网络订餐的要求,网络订餐的信息数量也在与日俱增,这使网络订餐系统的问世成为了一件十分紧迫的事情。

1.1 课题的研究背景

随着互联网技术的飞速发展和智能手机的广泛普及,人们的生活方式发生了深刻变革。餐饮行业作为与人们日常生活紧密相连的领域,也在这股数字化浪潮中迎来了全新的机遇与挑战。传统的餐饮经营模式,主要依赖顾客到店就餐或电话订餐,这种方式在信息传播、订单处理效率以及顾客体验等方面存在诸多局限性。

近年来,网络订餐市场呈现出爆发式增长。消费者越来越倾向于使用便捷的网络订餐平台,随时随地浏览丰富多样的菜品信息,根据个人口味和需求下单,并享受快速的送餐上门服务。对于餐饮商家而言,网络订餐系统不仅能够拓宽销售渠道,增加营业收入,还能通过大数据分析深入了解顾客的消费习惯和偏好,从而优化菜品研发、精准营销以及库存管理等运营环节。

在技术层面,SpringBoot作为一款流行的java开发框架,为构建高效、稳定且易于维护的网络应用程序提供了强有力的支持。它具有简化配置、快速搭建开发环境、内置多种实用功能以及良好的扩展性等优点,能够大大缩短网络订餐系统的开发周期,提高开发效率与质量,使开发人员能够将更多精力聚焦于系统的业务逻辑与功能创新上。

网络订餐系统主要通过计算机网络,对网络订餐系统所需的信息进行统一管理,方便用户随时随地进行增添、修改、查询、删除各类信息。

1.2 课题研究目的

全球经济在快速的发展,中国更是进步飞速,这使得国内的互联网技术进入了发展的高峰时期,这让中外资本不断转向互联网这个大市场。在这个信息高度发达的现在,利用网络进行信息管理改革已经成为了人们追捧的一种趋势。"网络订餐系统"是运用java语言和SpringBoot框架,以Mysql数据库为基础而发出来的。为保证我国经济的持续性发展,必须要让互联网信息时代在我国日益壮大,蓬勃发展。伴随着信息社会的飞速发展,网络订餐系统所面临的问题也一个接一个的出现,所以现在最该解决的问题就是信息的实时查询和访问需求的问题,以及如何利用快捷便利的方式让访问者在广大信息系统中进行查询、分享、储存和管理。这对我们的现实生活中具有非常重要的意义,所以网络订餐系统诞生了。

1.3 课题的研究意义

首先对于消费者:

1.便捷性:网络订餐彻底打破时空束缚,消费者借助手机或电脑,可在任意时间、地点轻松下单订餐,极大节省外出就餐的时间与精力。忙碌上班族能在工作间隙迅速预订餐食,学生在宿舍也可便捷享受美食配送,让就餐变得轻松随意。

2.丰富的选择:订餐平台汇聚各类餐饮商家,提供丰富多样的菜品选择。消费者可在同一平台对比多家店铺菜品、价格及评价,轻松筛选出符合自身口味与预算的美食,充分满足多样化饮食需求。

3.个性化体验:系统依据消费者历史订单与浏览行为,精准推荐个性化菜品与商家,还支持消费者自主设定口味偏好、送餐时间等特殊需求,显著提升用餐满意度与忠诚度。

其次对于餐饮商家:

1.扩大市场覆盖范围:借助网络订餐系统,商家销售范围得以大幅拓展,突破地域局限,吸引更多潜在顾客,有效提升品牌知名度与市场份额。特色小吃店等原本服务范围有限的商家,可借此将美食推广至更广阔区域。

2.提升运营效率:系统实现订单全流程自动化处理,从下单到配送安排,各环节高效有序,减少人工干预与错误,提高餐厅整体运营效率。同时,实时库存监控与数据驱动的菜品供应调整,有效避免食材浪费与缺货现象。

3.精准营销与客户关系管理:通过分析平台积累的消费者数据,商家能深入了解顾客行为偏好,制定个性化营销策略,如推出专属优惠、会员制度等,增强与顾客互动与粘性,促进顾客重复购买与口碑传播。

最后对于餐饮行业:

1.推动行业数字化转型:SpringBoot技术支撑的网络订餐系统广泛应用,推动餐饮行业加速数字化进程,促使传统企业积极引入信息技术,优化业务流程,提升管理水平,推动行业向智能化、高效化方向发展。

2.规范市场秩序与提升服务质量:订餐平台对商家的资质审核与服务质量要求,有助于规范市场秩序,提升行业整体服务质量与食品安全水平。用户评价与反馈机制激励商家持续改进菜品与服务,营造良性竞争环境。

同时,本毕业设计选题为深入学习SpringBoot知识提供了实践平台,有助于将理论知识转化为实际项目经验,提升个人技术能力与综合素质,为未来职业发展奠定坚实基础,是一项极具价值的研究与实践项目。

1.4 研究现状

在国外线上管理发展较早。相对应的软件的开发设计和保护也有所增加4。由于长時间的技术积累,产品研发工作更是持续推动,最终获得了较大的发展。如今,向着智能化,数字化和信息化的方位快速发展。各行各业都使用了相似的规章制度,推动发展,获得了较好的经济效益5

在国内,因起步较晚,目前的管理还不够完善,发展不平衡,对网络订餐的管理过程中应用电子计算机和网上的领域以及外部状况信息存有很大差别。技术性简易地取代了过去的形式或方式,但根据更科学的方式再次设计方案管理的这一环节中,大家必须舍弃传统的管理方式,尽早更改管理方法,变化管理理念合理操纵,使系统更细腻,控制成本、提升管理效益。

计算机作为信息科学的媒介和关键,它的出现和发展对人类社会的繁荣起着至关重要的作用。无论是政府机构还是公共机构,都会根据工作内容选择一套优秀的通信技术和专业的办公设备,利用这些技术和设备快速收集、解决和存储信息,使管理工作变得方便快捷,达到科学合理的管理目标。

总之,网络订餐系统的发展呈不断上升的发展趋势,现在传统的手工制作和半手工管理的方法进入到信息化管理的转变过程中,必须使用和融合新的信息技术来完成传统的系统设计方法,才能保证系统的效果和质量。

第2章 相关技术

本网络订餐系统的数据库采用的是Mysql数据库,并且选择了java语言和SpringBoot框架进行开发项目,在项目开发过程中,实现了系统功能模块的安全性、实用性、稳定性、易维护和页面简单等特点。

2.1 JAVA简介

Java是由sun公司开发出来的,后来被oracle收购,前身为oak语言。后来进入90年代初始期时,互联网兴起,重新将oak语言升级改造(借鉴C++语言),最后形成了JAVA语言。JAVA在语言操作时,大部分就只有一种操作方式,并且支持跨平台,即使是在一个操作系统平台下开发,也可以运行在所有操作系统平台中,其编程的本质也是由数据结构和算法构成。

2.2 SpringBoot框架

SpringBoot是由Pivotal的开发团队在2013年开发的一个免费、轻量级、开源的系统框架。SpringBoot的主要设计思想是约定大于配置,因此SpringBoot在设计时几乎达到零配置。SpringBoot集成了业界的开源框架。

SpringBoot是一个非常强大的后台框架,因为SpringBoot的开发基本上不需要写配置文件,所以利用SpringBoot来构建网站的后台环境,在SpringBoot的YML配置文件中写项目启动端口,项目就可以启动了。项目的Java和静态文件由SpringBoot管理。

2.3 Tomcat服务器

Tomcat主要用来解析Web页面或服务中提供的Java代码,其执行的过程为:客户端浏览器发送请求之后,服务器会接受请求并进行处理。此时客户端显示的页面就是Tomcat运行Java程序返回的结果。在JavaWeb项目中,如果不使用服务器进行编译,则无法运行看到项目的结果,使用Tomcat可以更好的对项目进行开发,并且Tomcat相对于其他服务器比较容易扩展,并且有很好的安全性,所以本次设计选择该服务器作为系统服务器。

2.4 MySQL数据库

MySQL是一种用于数据存储的关系数据库管理系统,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。由于计算机是一个巨大的数据处理工具,所以数据库管理系统在计算机中占有重要地位。数据的管理不仅仅只是数据的存储,而是已经转变成用户需要的许多的数据的管理。其也有很多不同的类型,能够做到有简单的数据管理到大量的数据的管理能力。

这种数据库是比较灵活的方式,优势就在于更加的切合开发者的思考逻辑,所以理解起来也会比较的方便,还能够和其他的语言一起使用,在连接起来就是比较的易懂,同时对于一些基本的查询以及添加的操作也是必须能够掌握的功能。

2.5 本章小结

本章节对项目网络订餐系统进行了相关技术的分析与介绍,在结合技术的优点和适应性来选择数据库、服务器和开发环境,基于现有的情况,针对系统的各个模块确定系统的最优设计方案。

第3章 系统分析

为满足用户的需求,本章分析系统开发的可行性,将从技术和操作等方面来判断,然后通过需求分析、系统流程分析来确定网络订餐系统的功能。

3.1 技术可行性分析

网络订餐系统在使用电脑和信息分析系统这些设计没有硬性要求,电脑只要是可以正常使用的话,那么代码和页面设计就是可行的。要求高的主要是服务器,平台上传服务器一定要选择性价比高和安全性高的,打开网站一定要顺滑不卡顿,所以硬件也是可行的2

所以,从以上可行性分析可得,本系统的开发是没有问题的。

3.2 操作可行性分析

将根据管理系统中的用户体验和管理员的效率来分析该措施的可行性。管理人员和用户都可以通过简单的操作登录进对应的系统页面,方便用户搜索业务信息和管理人员管理数据,不需要特别懂电脑的人也可以轻松访问系统模块。该系统已完全投入使用。

3.3 需求分析

本网络订餐系统是为了提高用户查阅信息的效率和管理人员管理信息的工作效率,可以快速存储大量数据,还有信息检索功能,这大大的满足了用户和管理员这两者的需求。操作简单易懂,合理分析各个模块的功能,尽可能优化界面,让用户和管理员能使用环境更好的系统。

对比要实现的功能来分析出用户的需求,可以让用户在线对其进行添加、修改、查看、删除,这不仅满足了用户的需求,还大大的节省了时间。因此,管理员的需求也应当考虑一下,尽可能提高管理员的工作效率。

3.4 项目设计目标

本防系统采用Mysql数据库和java语言,SpringBoot框架进行开发而成,极大程度上的保证了系统的稳定性。

能够提升餐饮企业运营效率,降低人力与管理成本,提高订单处理速度与配送准确性,实现资源优化配置。

增强用户体验,吸引更多顾客使用网络订餐服务,提高顾客满意度。

3.4.1 关于系统的基本要求

(1)功能要求:管理人员可以管理自己的个人中心、用户管理、商家管理、菜品分类管理、店铺信息管理、在线咨询管理、商品信息管理、对系统等进行管理 3

(2)性能:可以准确无误的在不同的操作系统中登录到用户或者管理员的相应界面进行轻松的操作4

(3)环境要求:支持不同的操纵系统和不同的平台,可用于Windows系列、Vista系统等多种操作系统5

3.4.2开发目标

本网络订餐系统的主要开发目标如下:

(1)减少后台管理人员的工作量,对用户的信息进行系统的管理;

(2)必须要方便快捷的查看搜索信息并管理信息;

(3)用户是具有多样性的,所以界面要设置的简单明了,操作更要方便快捷。

3.5 系统流程分析

系统登录流程图如图所示3-1所示。

图3-1 系统登录流程图

用户和管理员可以添加信息,内容没有问题之后按下确定键就添加成功了。添加信息流程图如图3-2所示.

图3-2 添加信息流程图

用户可以选择把自己发布的信息删掉,选择要删除的文章确认之后,删除信息的操作就完成了。删除信息流程图如图3-3所示。

图3-3 删除信息流程图

3.6 本章小结

本章主要是对网络订餐系统的可行性分析和所要实现的功能进行分析,在对一系列的系统可行性分析之后,又详细的讲述了项目的目标与原则,让人们深刻的了解网络订餐系统的设计思想,之后重点对登录模块、添加模块和删除模块的流程进行了详细的图文介绍。

第4章 系统设计

本章主要讲述的是网络订餐系统的设计开发结构,简单介绍了开发流程与数据库设计的原则以及数据表的关系结构图,并且详细的展示了数据表的内部结构信息与属性。

4.1 系统体系结构

系统启动后,在登录界面,输入正确的账号密码,选择进入管理员界面或用户界面,管理员界面是用来管理页面与用户信息,用户界面可以正常的使用,并对个人信息、店铺信息、菜品信息、公告信息等进行份内的操作,系统登录结构图如图4-1所示。

图4-1 系统登录结构图

管理员模块属于是网站的后台,进入之后有大量的管理员功能,管理员也可以使用用户模块的功能,为了维护网站的稳定与页面的布局,将管理员模块的功能详细化后可以使用系统管理对页面进行布局修改,可以发布公告提示用户规范,用户模块只可以对店铺信息、菜品信息、公告信息等进行查询等,并且更改个人信息,网络订餐总体结构图如图4-2所示。

图4-2 网络订餐总体结构图

4.2 开发流程设计

系统的开发流程设计简单的介绍了开发过程,先对任务书进行分析,根据要实现的功能对各个模块进行开发,之后再对模块一一进行测试,测试成功后将模块整合再测试整体功能,完善整体结构6。开发系统流程图如图4-3所示。

图4-3开发系统流程图

4.3 数据库设计原则

数据库设计之后,根据数据库关系,可以更加清晰地了解到数据库结构,每一个数据表之间的关系,再创建数据表。快速更改和查询对应的信息,有了数据库就不用在程序和代码中寻找。

分析网络订餐系统的数据结构后,在E-R图中分析管理员登录时的模式,需要输入用户名与密码,管理员信息E-R如图4-4所示。

图4-4 管理员信息E-R图

用户E-R图如图4-5所示。

图4-5用户E-R图

店铺信息E-R图如图4-6所示。

图4-6店铺信息E-R图

在线咨询E-R图如图4-7所示。

图4-7在线咨询E-R图

菜品信息实E-R图如图4-8所示。

图4-8菜品信息E-R图

4.4 数据表信息

在关系数据E-R图中,分析并创建数据表,数据表用来记录信息,数据表关系由多个数据表组成,下面介绍的是数据表各个字段信息如下表所示。

表4-1:关于我们表

字段名称 类型 长度 字段说明 主键 默认值
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-2:订单表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
orderid varchar 200 订单编号
tablename varchar 200 商品表名 caipinxinxi
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 物流
shangjiazhanghao varchar 200 商户名称
goodtype varchar 200 商品类型

表4-3:公告信息表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容

表4-4:店铺信息评论表

字段名称 类型 长度 字段说明 主键 默认值
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-5:菜品信息评论表

字段名称 类型 长度 字段说明 主键 默认值
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-6:店铺信息表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
shangjiazhanghao varchar 200 商家账号
shangjiamingcheng varchar 200 商家名称
dianpuhuanjing longtext 4294967295 店铺环境
shangjiadizhi varchar 200 商家地址
lianxishouji varchar 200 联系手机
yingyeshijian varchar 200 营业时间
kaiyeriqi date 开业日期
dianpujianjie longtext 4294967295 店铺简介
tesexinxi longtext 4294967295 特色信息

表4-7:配置文件表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值

表4-8:在线咨询表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zixunbianhao varchar 200 咨询编号
shangjiazhanghao varchar 200 商家账号
shangjiamingcheng varchar 200 商家名称
zixunneirong longtext 4294967295 咨询内容
zhanghao varchar 200 账号
xingming varchar 200 姓名
zixunriqi date 咨询日期
shhf longtext 4294967295 回复内容

表4-9:购物车表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
tablename varchar 200 商品表名 caipinxinxi
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 图片
buynumber int 购买数量
price float 单价
discountprice float 会员价
shangjiazhanghao varchar 200 商户名称
goodtype varchar 200 商品类型

表4-10:菜品信息表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
caipinmingcheng varchar 200 菜品名称
caipintupian longtext 4294967295 菜品图片
caipinfenlei varchar 200 菜品分类
kouwei varchar 200 口味
yuancailiao varchar 200 原材料
caipinjianjie longtext 4294967295 菜品简介
caipinxiangqing longtext 4294967295 菜品详情
shangjiazhanghao varchar 200 商家账号
shangjiamingcheng varchar 200 商家名称
shangjiadizhi varchar 200 商家地址
lianxishouji varchar 200 联系手机
faburiqi date 发布日期
onelimittimes int 单限
alllimittimes int 库存
clicktime datetime 最近点击时间
clicknum int 点击次数 0
price float 价格

表4-11:用户表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP

表4-12:菜品分类表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
caipinfenlei varchar 200 菜品分类

表4-13:收藏表

字段名称 类型 长度 字段说明 主键 默认值
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-14: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-15:地址表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
address varchar 200 地址
name varchar 200 收货人
phone varchar 200 电话
isdefault varchar 200 是否默认地址是/否

表4-16:商家表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
shangjiazhanghao varchar 200 商家账号
mima varchar 200 密码
shangjiamingcheng varchar 200 商家名称
shangjiadizhi varchar 200 商家地址
youxiang varchar 200 邮箱
lianxishouji varchar 200 联系手机
yingyezhizhao longtext 4294967295 营业执照
money float 余额 0

表4-17:用户表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
zhanghao varchar 200 账号
mima varchar 200 密码
xingming varchar 200 姓名
xingbie varchar 200 性别
youxiang varchar 200 邮箱
shoujihaoma varchar 200 手机号码
touxiang longtext 4294967295 头像
money float 余额 0

4.5 本章小结

本章具体讲述了系统的大体结构,主要包括用户、商家和管理员两大系统模块,使其各个功能简洁明了。同时对数据库的设计原则进行分析,从而提高了系统的效率。

第5章 系统实现

本章讲述的是系统对各个模块功能实现的效果图,对首页、管理员功能和用户功能分别进行了展示,页面布局清晰,操作简单快捷,基本实现了对用户和管理员对系统的需求。

5.1系统功能实现

当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到网络订餐系统的导航条和菜品信息推荐等。系统首页界面如图5-1所示:

图5-1 系统首页界面

这是一个用户注册的界面,当用户没有账户时可以通过注册来登录系统,只需要根据相应的提示,输入用户名和密码等信息即可。用户注册界面如图5-2所示:

图5-2 用户注册界面

在店铺信息页面的选择或者输入商家名称、商家地址和开业日期进行查询店铺详细信息;并可以对店铺信息进行收藏、咨询和评论等操作,店铺详细信息页面如图5-3所示:

图5-3 店铺信息界面

在菜品信息页面的选择或者输入菜品名称、原材料、商家名称、价格进行查询菜品详细信息;并可以对菜品信息进行收藏、添加到购物车、立即购买和评论等操作,菜品详细信息页面如图5-4所示:

图5-4菜品信息详细页面

在个人中心页面可以更新个人详细信息,并在我的订单、我的地址和我的收藏页面进行相关操作;并可以在线充值的操作,如图5-5所示:

图5-5 个人中心界面

5.2后台模块实现

后台用户登录,在登录页面选择需要登录的角色,在正确输入用户名和密码后,进入操作系统进行操作;如图5-6所示。

图5-6 后台登录界面

5.2.1管理员模块实现

管理员进入主页面,主要功能包括对首页个人中心、用户管理、商家管理、菜品分类管理、店铺信息管理、在线咨询管理、商品信息管理、系统管理等进行操作。管理员主页面如图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系统管理界面

5.2.2商家功能模块

商家进入后台管理主页面,主要功能包括对首页、个人中心、店铺信息管理、在线咨询管理、菜品信息管理、订单管理等功能进行操作。点击店铺信息管理,商家可以通过输入商家名称、商家地址、开业日期进行查询、新增和删除等操作。店铺信息管理主页面如图5-14所示:

图5-14店铺信息管理主界面

订单管理,商家可以对已发货订单、已支付订单、已完成订单、已取消订单、已退款订单、未支付订单进行查询、物流发货等,并可以查看日销量、月销量、年销量、日销额、月销额和年销额的操作,如下图所示:

图5-15订单管理主界面

5.2.3用户后台管理模块

用户进入后台管理主页面,主要功能包括对首页、个人中心、在线咨询管理等功能进行操作。点击在线咨询管理,用户可以通过输入商家名称和姓名进行查询和删除等操作。在线咨询管理主页面如图5-16所示:

图5-16在线咨询管理主界面

5.3 本章小结

本章讲述了网络订餐系统的实现,并把用户、商家和管理员三大功能模块用图片的形式展示出来并一一解读了其中的功能。设计的页面简洁,布局清晰,操作十分快捷,极大程度的节约了操作时间。

第6章 系统测试

系统测试是系统开发的最后一部也是最重要的一步,能看出其作用在系统开发中占据了很重要的地位。本章将通过系统测试来发现网络订餐系统中出现的各种问题并立刻做出改正,以确保系统中的功能模块能够准确实现。

6.1 系统测试的目的

任何人系统开发中也不能保证没有一点错误,在开发的过程中错误是不可避免的,所以在发现错误时要及时改正,不能让错误一直存在,否则会引发系统崩溃等不可小觑的后果,所以才需要系统测试来在一定程度上避免这些问题的发生。在测试中发现错误并及时改正才会让系统长久稳定的运行,虽然这是耗时耗力的,但为了系统能够长期使用,系统测试这一步骤也是十分重要的。

为实现系统中各个模块的功能,系统测试是必须的,这样才能判定系统是否能准确的实现预想的功能13。在正式使用系统前必要的步骤就是针对系统进行测试,确保系统的准确性,以供使用。

6.2 系统测试方法

在测试中发现问题一定要立马寻找解决办法,不要妄图通过偶然的概率对错误不管不问,只有认真测试解决问题,才能保证网络订餐系统的质量,可以极大的缩短开发的时间。

测试时不要一错再错,同样的错误一起解决,这样才能提高系统的稳定性和安全性。

6.3 功能测试

下面对登录模进行测试,表格里分别是输入用户名和密码后的三种不同的结果,当用户名错误时会提示用户名错误,当密码错误时会提示密码错误,当账户与密码都正确时会提示登录成功,如果以用户的账户密码登录管理员模块会提示登录失败14。登录模块测试如表6-1所示。

表6-1 登录测试

模块名称 测试用例 预期结果 实际结果 是否通过
登录模块 用户名:admin 弹出错误提示 弹出错误提示 通过
密码:123 提示密码错误 提示密码错误
登录模块 用户名:123 弹出错误提示 弹出错误提示 通过
密码:admin 提示用户名错误 提示用户名错误
登录模块 用户名:admin 管理员登录成功 管理员登录成功 通过
密码:admin

通过删除一则最新通知,来判断此功能是否通过测试,当选择删除这个模块时,会提示是否确认删除,确认后会提示删除成功,页面自动跳转。删除模块测试如表6-2所示。

表6-2 删除模块测试

模块名称 测试用例 预期结果 实际结果 是否通过
删除分类模块 分类名:最新通知 删除成功、页面自动跳转 删除成功、页面自动跳转 通过

通过输入错误的原密码、不一致的新密码和正确的密码来测试修改密码的功能是否通过测试15。修改密码模块测试如表6-3所示。

表6-3 修改密码测试

模块名称 测试用例 预期结果 实际结果 是否通过
修改密码模块 原密码:666 弹出错误提示 弹出错误提示 通过
新密码:123 提示原密码错误 提示原密码错误
确认密码:123
修改密码模块 原密码:admin 弹出错误提示 弹出错误提示 通过
新密码:123 提示确认密码不一致 提示确认密码不一致
确认密码:333
修改密码模块 原密码:admin 密码修改成功 密码修改成功 通过
新密码:123
确认密码:123

通过上述功能测试,结合测试结果可以看出,该项目的基本功能是可以实现的,系统中的功能很全面并且界面设计简洁清晰,最终通过了系统测试。

6.4 本章小结

本章主要论述的是网络订餐系统的测试,讲述了系统测试的目的和方法,通过对各个重要功能的测试,发现系统中可能存在的技术性问题并加以改正。最终测试操作完成了网络订餐系统的实现。

结 论

本系统是采用java语言,SpringBoot框架构建的一个操作管理系统,选择的数据库是Mysql。整个过程先是通过整体的系统分析,来确定本系统的可行性是否达标。为了满足用户的需求以及提高管理员的工作效率,通过系统所要实现的功能分析,决定了用户和管理员要实现的功能。之后就是精细各个模块的具体功能,定义用户和管理员们的权限,分割成管理员功能模块、商家模块和用户功能模块。之后通过系统测试来确保数据的准确性和操作的准确性,发现错误并立即做出了改正。

系统本身就是共享信息的存在,用户和管理员都可以发布信息来分享资源,通过加入关键词检索,让用户和管理员更方便的使用系统。同时通过分类以便用户查找信息可以进一步的对号入座,极大的节省了查找信息的时间。通过加入信息的评论功能,加深了用户与用户之间的交流,使其构造出更良好的网络环境。

关于网络订餐设计还是有很多不足的地方,在管理员模块不能更好的设置用户模块的权限,使其禁言或不可以发布信息等其操作,导致用户的体验性可能会降低,但也恰恰提高了自由度。在用户模块功能略少,操作单一,缺少点赞分享等操作,影响了用户的积极性。

在本次项目设计中,完成了大大小小的模块,系统设计的调查,数据的分析,在安装软件方面,选择版本问题困扰了我很久,后来找相关的网站介绍,了解了各个版本的利与弊,最后完善了本次设计。网络订餐的系统设计选择了Java开发工具,和Mysql数据库对前后台的数据交互进行分析保存,使用Mysql数据库可以是程序运行更加的安全且稳定,从而实现并完善系统的开发。

参考文献

1 徐明华,邱加永. Java基础与案例开发详解. 北京:清华大学出版社,2019.

2 李振捷,陈雄. Java网站开发典型模块与实例精讲.北京:电子工业出版社,2020.

3 邓子云,燕锋. Java网络编程从基础到实践(第二版).北京:电子工业出版社,2021.

4 张银鹤,刘治国. Java动态网站开发实践教程. 北京:清华大学出版社,2018.

5 陶宏才.数据库原理及设计(第二版).北京:清华大学出版社,2020.

6 柯海丰,侯宏仑. Java+Oracle网络应用系统开发与实例.人民邮电出版社,2021.

7 Drozdek, Adam.Data Structures and Algorithms in Java,Course Technology,2018.

8 史济民,顾春华. 软件工程-原理方法与应用(第二版).北京:高等教育出版社,2018.

9 刁成嘉. 面向对象技术导论-系统分析与设计. 四川:机械工业出版社,2021.

10 萨师煊,王珊. 数据库系统概论(第三版). 北京:高等教育出版社,2020.

11 赛奎春,白伟明,赵玉君,李南南. Java信息系统开发实例精选.四川:机械工业出版社,2019.

12 周绪,管丽娜. SQL Server2000入门与提高(中文版).北京:清华大学出版社,2019.

13 卢翰.Java项目开发案例全程实录(第2版).北京:清华大学出版社,2021.

14 林信良.Servlet&Java学习笔记. 北京:清华大学出版社,2018.

15 郭珍,王国辉. Java程序设计教程(第2版).北京:人民邮电出版社2019.

16 Hong Jun Cao;Pei Zhang;Zhi Qiang Zhou. Design and Implementation of Recruitment Information Retrieval System Based on Low-Carbon Online Recruitment. Advanced Materials Research.2021,Vol.403-408:1883-1887.

17 Jeffrey M Ferranti;William Gilbert;Jonathan McCall;Howard Shang;Tanya Barros;Monica M Horvath. FOCUS on clinical research informatics: The design and implementation of an open-source, data-driven cohort recruitment system: the Duke Integrated Subject Cohort and Enrollment Research Network (DISCERN). J Am Med Inform Assoc.2020,Vol.19 (Especial 1):e68-e75.

18 Jun Luo;Wen Xuan Gu. Establishment of Network Platform of Virtuai Teaching Laboratories in Colleges and Universities Based on Java Technology. Advanced Engineering Forum.2018,Vol.4:189-192.

19 Jing Ying Zhao;Hai Guo. Development of the Java Basic Knowledge Learning Software. Advanced Materials Research.2019,Vol.831:481-485.

20 Zeichick, Alan. J2EE 1.4 brings Web services to EJBs, adds language to Java. Software Development Times.2020,No.70:6.

致 谢

行文至此,意味着我的大学生涯也即将结束,转眼间,我的大学生涯即将结束,四年的大学生涯即将画上了句号,这四年的时光弹指一瞬,仿佛都在梦的昨天。

年年遇人,人遇去去,遇遇至散散。每忆同行之挚友,轻重自在心头。思年少青春岁月,怀逸兴,畅聊彻夜至天明。携清风,共赏人间山河远阔。而今留此片言只语托尺素,情长纸短聊表相思。这四年的学习生活也让我受益匪浅,让我见识了这些形形色色的人和事,感谢在这四年里帮助过我的老师和同学。对系统的胜利完成,在这期间为了实现的更好,整个过程中付出很多的时间和精力,这段时光终将难忘。

首先要感谢的是我的导师老师,是他带我走入这一领域,耐心地教导我成为一名具有专业素质的本科生,在我遇到困难的时候给予我鼓励,在我困惑的时候给我正确的指引,在此谨向您表示最衷心的感谢!

同时,我也要感谢我的室友们,是他们的努力拼搏的精神感染了我,在我遇到困难时不断鼓励我,给我动力;在我需要帮助时伸出援手,替我分担,感谢他们在这四年中与我并肩作战!

此外,我还要感谢师兄师姐们,在我遇到难题时耐心为我解惑,主动与我分享他们的经验,让我在探究学术的路上少走了很多弯路。我也很感谢后来遇到的各位师弟,与我积极地探讨学术,对我的实验开展做了很大贡献。

最后,借此机会,祝愿身边遇到的每一位:万般熙攘化清风朗月,四方梦想皆如愿以偿。

相关推荐
Database_Cool_3 小时前
阿里云 RDS MySQL 降本增效实战:从规格选型到成本优化,月成本降低64%全攻略
mysql·阿里云·云计算
咩咩啃树皮9 小时前
第40篇:Vue3组件化开发精讲——组件拆分、复用、父子通信、工程化架构
java·前端·架构
鱟鲥鳚10 小时前
Spring Boot 集成 LangChain4j:从模型调用到 Tool Calling(Demo版)
java·spring boot
大模型码小白11 小时前
【Python零基础教程】继承、多态与魔法函数:面向对象编程三大核心特性详解
java·大数据·开发语言·人工智能·python·ai编程
腾渊信息科技公司12 小时前
Spring Boot对接MES实战:视觉检测数据自动同步方案
java·人工智能·spring boot·后端·计算机视觉·ai·软件需求
Cloud云卷云舒13 小时前
云卷云舒:从Oracle/MySQL迁移到HaishanDB:迁移评估工具核心技术拆解
mysql·oracle·ai-native·haishandb·信创数据库替换
爱笑的源码基地13 小时前
高并发 Redis 缓存门诊HIS系统源码,含财务统计药房进销存
java·程序·门诊系统·诊所系统·云诊所源码
wuqingshun31415913 小时前
TCP超时重传机制是为了解决什么问题?
java
莫逸风16 小时前
【AgentScope 2.0】 0. 学习指南
java·llm·agent·agentscope