基于SSM框架的餐馆点餐系统的设计论文

基于SSM框架的餐馆点餐系统的设计

摘要

当下,正处于信息化的时代,许多行业顺应时代的变化,结合使用计算机技术向数字化、信息化建设迈进。传统的餐馆点餐信息管理模式,采用人工登记的方式保存相关数据,这种以人力为主的管理模式已然落后。本人结合使用主流的程序开发技术,设计了一款基于SSM的餐馆点餐系统,可以较大地减少人力、财力的损耗,方便相关人员及时更新和保存信息。本系统主要使用B/S开发模式,在idea集成开发环境下,采用Java语言编码设计系统功能,MySQL数据库管理相关的系统数据信息,SSM框架设计和开发系统功能架构,最后通过使用Tomcat服务器,在浏览器中发布设计的系统,并且完成系统与数据库的交互工作。本文对系统的需求分析、可行性分析、技术支持、功能设计、数据库设计、功能测试等内容做了较为详细的介绍,并且在本文中也展示了系统主要的功能模块设计界面和操作界面,并对其做出了必要的解释说明,方便用户对系统进行操作和使用,以及后期的相关人员对系统进行更新和维护。通过设计基于SSM的餐馆点餐系统,可以极大地提高餐馆行业的工作效率,提升用户的使用体验。

关键词:餐馆点餐管理,Java语言,B/S结构,MySQL数据库

Design of restaurant ordering system
based on SSM framework
Abstract
At present, we are in the era of informationization. Many industries conform to the changes of the times and use computer technology to move towards digitalization and informationization. The traditional restaurant ordering information management mode uses manual registration to save relevant data. This manpower-based management mode is already outdated. Using mainstream program development technology, I designed a restaurant ordering system based on SSM, which can greatly reduce the loss of human and financial resources, and facilitate relevant personnel to update and save information in a timely manner. This system mainly uses the B/S development mode. In the idea integrated development environment, the system functions are designed in Java language, the MySQL database is used to manage the relevant system data information, the SSM framework is used to design and develop the system function architecture, and finally, by using the Tomcat server, in the The designed system is published in the browser, and the interaction between the system and the database is completed. This paper gives a detailed introduction to the system requirements analysis, feasibility analysis, technical support, functional design, database design, functional testing, etc., and also shows the main function module design interface and operation interface of the system in this paper, and Necessary explanations are given to facilitate users to operate and use the system, as well as to update and maintain the system later by relevant personnel. By designing a restaurant ordering system based on SSM, the work efficiency of the restaurant industry can be greatly improved and the user experience can be improved.

Key words:Restaurant order management, Java language, B/S structure, MySQL database

目 录

摘要 I
Abstract II
1绪论 1
1.1研究背景与意义 1
1.1.1研究背景 1
1.1.2研究意义 1
1.2国内外研究现状 2
1.2.1国外研究现状 2
1.2.2国内研究现状 2
1.3研究内容与方法 2
1.3.1研究内容 2
1.3.2研究方法 3
1.4论文的组织结构 3
2相关技术介绍 5
2.1 B/S结构 5
2.2 Java语言 5
2.3 SSM框架 5
2.4 MySQL数据库 6
3系统分析 7
3.1系统的需求分析 7
3.2系统的可行性分析 7
3.2.1经济可行性 7
3.2.2技术可行性 7
3.2.3操作可行性 8
4系统设计 9
4.1系统的总体功能设计 9
4.2数据库设计 9
4.2.1概念设计 9
4.2.2逻辑设计 12
5系统实现 16
5.1个人中心 16
5.2用户管理 16
5.3菜品管理 16
5.4菜品评价管理 17
5.5菜品收藏管理 17
5.6菜品订单管理 18
5.7餐桌管理 18
5.8基础数据管理 19
5.9轮播图管理 20
6系统测试 21
6.1测试概述 21
6.2测试结果 21
7总结与展望 24
参考文献 25
致谢 26

1绪论

1.1研究背景与意义
1.1.1研究背景
近年来,第三产业发展非常迅速,诸如计算机服务、旅游、娱乐、体育等服务行业,对整个社会的经济建设起到了极大地促进作用,这一点是毋庸置疑的。现下,国家也出台了一些列的政策来支持和鼓励第三服务产业的发展与完善,用以带动社会经济的发展[1]。所以,整体来说,国家是比较提倡发展第三方服务行业的。纵观计算机领域的发展历程,从计算机的诞生到现在,已经有几百年的历史了,计算机应用技术目前也处于成熟阶段,并且许多相关的研究人员也在提出较新的技术,不断地发展和完善计算机领域。再到如今,计算机已经发展成为一个比较热门的行业了。在高校中,计算机、人工智能等专业热度非常高,许多学生在选择专业的时候,大都优先考虑计算机专业。在社会上,计算机类行业也成为了比较受欢迎的行业,从在浏览器中访问的网址,到手机上的各种应用程序,到大型的软件服务设备,基本上都离不开计算机技术支持,以及硬件的支撑。
如今,互联网几乎遍布于世界的各个角落,人工智能、大数据占据的越来越重要的社会地位,比如疫情期间,通过大数据技术进行筛查,确定哪些人员无接触史,哪些人员需要重点观察,由此可以在极短的时间内,以最快的速度对疫情进行防控。在这个大背景环境的推动下,本人通过学习Java语言、MySQL数据库、SSM框架等相关的计算机技术,打好坚实的技术基础,方便后期对系统进行研发。而后再通过对系统进行需求分析、可行性分析、总体功能设计等工作准备,确定系统的总体功能需求,方便接下来详细地系统功能模块进行设计和实现,最后成功的研发了一款基于SSM的餐馆点餐系统。本系统改善了传统的管理模式,将原先的手工记录和管理信息,改进为使用计算机存储和管理信息记录,极大地方便了工作人员对相关数据进行处理,为餐馆行业节约了不少的员工费用和管理开销,并且能够在较短的时间内响应用户的需求,这种便捷的操作,对于用户来说可以节省了不少时间和精力,也省去了不少的麻烦,极大了方便了用户。
1.1.2研究意义
传统的餐馆点餐信息管理模式,主要是以人力为主进行管理和控制,由工作人员负责登记用户信息,再通过对照之前的信息记录,确定是否给用户提供相关的使用需求,以及如何提供能让用户满意的使用需求。这种管理模式已经适应不了时代的变化了,正在不断地走下坡路,并且逐步被信息化管理模式所取代。所谓的信息化管理模式,是现在主流的一种管理模式,其通过与计算机技术相结合的方式,对行业的整个工作模式和服务流程进行改进和完善。其主要通过使用计算机等设备,将工作服务流程电子化,并且进行存储记录,用以提高行业整体的服务水平。结合使用计算机技术,本人研发出一款基于SSM的餐馆点餐系统,采用电子化的方式对数据信息进行存储,便于工作人员对相关信息进行记录和管理,有利于提高餐馆行业的工作运营效率以及工作人员的管理速度,以此更好的满足用户的相关需求,最终达到提升用户的使用感受的目的,由此可见设计和实现本系统具有重要的意义和价值。

1.2国内外研究现状
1.2.1国外研究现状
美国是最先发展计算机技术的众多国家之一,早在上个世纪,美国就快速的将计算机技术发展起来,并且将其运用在军事、医院、学校、社会服务等场所。日本、德国等国家紧随其后,不断地发展和完善计算机技术,侧重将医疗、社会服务等领域与计算机技术相结合[2]。而后随着社会的发展与进步,计算机技术逐渐趋于成熟。许多发达国家在探索将计算机技术应用于各行各业中时,从另一个角度来看,也在不断地推进餐馆管理行业的信息化管理进程,使得餐馆点餐管理也变得更加网络化、信息化了。有许多专家表示,可以结合使用图像处理软件、人工智能技术等相关工具,深度地分析餐馆点餐管理系统,主要从简化运行操作,加设功能模块,美化系统界面,保障数据安全等方面,更深层次地提升和优化系统,并且尽可能地在理想状态下做到实时的信息共享[3]。
1.2.2国内研究现状
国内的计算机技术的发展虽然晚于国外,尤其是美国、英国、德国等发达国家。但是我国的计算机技术发展势头非常迅猛,近些年,也逐渐走向成熟和完善的阶段。现在人们大多选择网上购物,也越来越离不开天猫、支付宝、微信等应用软件的使用[4]。许多企业结合使用了云计算、人工智能等先进的计算机技术,自主研发了餐馆点餐系统,使得系统越来越成熟,功能越来越完备。结合计算机技术,采用主流的B/S开发结构模式开发一款基于SSM的餐馆点餐系统。由此,工作人员不再被时空所限制,直接通过使用浏览器的方式对系统进行注册登录操作,支持随时随地对相关的餐馆点餐信息进行管理,便于及时为用户提供相关的餐馆点餐服务。并且所设计的系统基本上能够符合用户的客观使用需求,有利于充分协调餐馆的人力、财力、物力等资源,不断提高点餐的服务水平和管理质量。
1.3研究内容与方法
1.3.1研究内容
本文首先介绍了餐馆点餐系统的研究背景与意义,其次介绍了功能模块的总体设计,接着介绍了各个功能模块的详细设计,最后介绍了系统的功能模块展示结果和测试结果。系统主要分为管理员角色和用户角色,具体的功能设计包括注册登录管理、个人中心管理、用户信息管理、菜品信息管理、订单信息管理等模块。注册登录管理功能是之前没有使用过本系统的新用户,在使用系统前,需要通过注册步骤,登记详细的信息资料,而后再通过输入正确的账号和密码,成功登录系统后,即可通过一系列的操作来满足自己的相关需求。个人中心管理功能是管理相关的个人信息资料,个人根据现实情况的需要,有选择的对个人账户的相关信息进行一定的操作,比如选择更新或者删除操作。用户信息管理是管理相关的用户信息记录,对用户相关的信息进行管理,可以及时的更新相应的用户的基本资料。菜品信息管理是管理相关的菜品信息记录,查看详情情况,方便及时响应用户的服务请求。订单信息管理是管理相关的订单信息记录,方便相关人员及时查看并追踪订单信息,如果遇到异常的订单信息,可以及时对其进行处理,在较短的时间内解决订单问题,提高用户的使用体验。
1.3.2研究方法
本系统采用B/S结构,在idea平台上,通过使用Java语言设计系统相关的功能模块,MySQL数据库管理系统相关的数据信息,SSM框架设计系统功能架构,并且对其进行必要的管理和控制。系统设计的最关键的环节,则是需要通过Tomcat服务器将系统发布到浏览器上,以便相关用户的操作和使用。本系统的设计和实现是整个餐馆行业的一大进步,促进了餐馆点餐管理信息行业的信息化建设,有利于简化相关人员工作流程,提高工作效率,提升工作幸福感。
1.4论文的组织结构
基于SSM的餐馆点餐系统的设计与实现的论文组织安排,大致可以被分为七个章节,具体的内容如下:
第一章为绪论,本章主要介绍了系统的背景、现状、方法等内容。根据研究背景与意义,介绍所要设计的系统的研究背景和理论依据,再通过国内外研究现状,了解当前相关的系统软件产品的实际研究情况,最后通过研究内容与方法,总体概括系统的整个开发流程和实现步骤,为系统提供可靠的理论依据和技术支持。
第二章为相关技术介绍,本系统通过在idea开发环境中,使用Java语言、MySQL数据库、SSM框架等关键技术,对系统基本功能进行设计和实现。其中,Java语言具有跨平台性,可移植性高,可以支持在不同的浏览器上运行本系统,MySQL数据库占用内存少,执行速度快,对于中小型系统的数据管理是非常好的选择。
第三章为系统分析,系统分析阶段主要是对系统进行需求和可行性分析,规划系统的功能设计,判断系统实现的可能性。根据需求分析,确认使用者对系统的基本功能需求,再通过在经济、操作、法律上进行可行性分析,分析系统研发的实际意义和使用价值,系统性能的稳定性和功能操作的便捷性,以及成功投入市场的可能性。
第四章为系统设计,系统设计阶段主要是对系统进行总体功能和数据库设计。通过介绍系统的总体功能设计,总体规划系统的功能模块,为系统的基本功能实现提供参考依据和设计思路。再通过介绍数据库设计,设计相关的数据二维表格存放和管理与系统有关的数据信息,便于相关人员管理与系统有关的数据信息,维护和更新数据信息的安全。
第五章为系统实现,系统实现阶段主要介绍了注册用户管理、菜品信息管理、订单信息管理等功能模块。通过前面介绍的需求分析、总体功能设计、数据库设计等相关内容,对系统基本的功能模块进行设计与实现。系统实现过程也可以说为对系统的各个相关功能进行设计和实现的过程,在整个系统开发过程中,这一阶段是极为重要,直接关系到用户对系统的使用感受。
第六章为系统测试,系统测试阶段主要介绍了系统测试基本概念、测试用例、测试功能等相关内容。系统测试阶段主要任务是对系统进行功能测试,测试所设计的系统功能模块能否正常打开并使用,在系统运行过程中是否发生异常,如运行异常、数据异常、结果异常等,并且根据测试结果,给出相应的测试总结,由此得出相关结论,说明系统是否达到预期要求、设计目的。
第七章为总结与展望,对全文内容进行总结,并且对未来提出展望。总体来说,本系统的开发是比较理想的,未来的工作主要是针对于系统的功能和性能等方面,做一定的改进和完善,不断地优化系统的功能设计,美化系统的界面设计,简化系统的操作难度,使其能够满足更多用户的使用需求。

2相关技术介绍

2.1 B/S结构
目前使用较多的开发结构模式大致可以包括C/S模式和B/S模式[5]。其中,C/S模式全称为客户端/服务器模式(Client/Server模式),B/S模式全称为浏览器/服务器模式(Browser/Server模式)。基于C/S模式下开发的系统,用户必须下载相应的客户端,即应用程序,才能操作和使用软件系统的相关功能模块。从使用者的角度来看,由于下载和安装客户端的步骤比较繁琐,期间还需要确保下载网速的稳定性,以及安装步骤的正确性,进而增加了用户放弃使用该系统的可能性,由此可见C/S模式具有很大的局限性。
由于C/S模式适用于小范围的局域网,并且具有一定的通信效率,所以在以前系统规模很小的时代,主要使用C/S模式对系统开发。随着时代地发展以及社会地进步,C/S模式也越来越满足不了开发者的设计需要,以及使用者的使用需求[6]。当下,C/S模式已经满足不了实际的系统程序设计要求,由此,B/S模式以C/S模式为基础而被提出,并且在近些年逐渐发展成为主流的开发结构模式。在B/S模式下开发的系统,不再需要用户下载和安装相应的应用程序,直接通过使用浏览器,输入正确的网站地址,以访问网站的形式实现系统的相关功能操作,这一特点对C/S模式下的开发设计做出了极大地改进,当然需要用户输入正确的账号和密码,才能成功的进入并使用系统。

2.2 Java语言
Java语言是由美国sun公司提出的一种面向对象的程序设计语言,它拥有着优秀的技术体系结构。目前在市场上,很大一部分的应用系统主要使用Java语言进行开发[7]。Java语言具有简单易懂,操作方便,健壮性强等优点,开发人员能够的在短时间内理解和掌握Java语言,并将其运用到具体的系统开发过程中学。Java语言所提供的垃圾回收机制,主要被用于解决系统的内存管理问题。此外,Java语言还将C语言中较难掌握的指针改进成容易被学习和掌握的引用,由此极大地简化了开发编程的难易程度,所以受到了很多开发人员的喜爱,大多数研发人员基本上首选使用Java语言开发系统。Java语言还具有跨平台性的特点,意味着它的可移植性非常高,这一特点有利于开发人员更新和维护相关代码,由它所开发的系统可以支持在不同的浏览器中打开。因为使用Java开发的系统兼容性较强,代码通用性较高,为了后期方便对系统进行完善和维护,所以本系统选择了使用Java语言进行设计和实现。

2.3 SSM框架
SSM框架主要由Spring、SpringMVC、MyBatis这三个框架所集成的,是现在比较流行的一种Java开发框架,能够适用于大中型的应用程序的设计和搭建[8]。Spring是前几十年前兴起的一种轻量级的、开源的Java开发框架,使用它可以解决相关的系统对象创建和对象依赖问题,并且也可以将高耦合的系统分解为低耦合的多个功能模块,方便对系统模块进行明确的分工,对功能代码进行理解和修改,这就极大地减轻了设计人员的开发压力[9]。SpringMVC框架是基于Spring框架而被提出的,它以MVC三层架构为核心,对Spring的相关技术进行了整合,主要针对于Web端进行技术架构,通过对相关的请求处理进行细化处理,用来响应用户的使用请求。MyBatis框架是一种开源的Java持久层框架,它改进了手动设置参数和获取结果记录的方式,通过支持对数据库进行存储过程、高级映射等处理,使得数据库的操作更加定制化、透明化,因此降低了数据库访问的复杂性,提高了开发的工作效率。
2.4 MySQL数据库
MySQL数据库是目前使用较多的关系型数据库。因为其具有开源免费、占用内存少、安装简单、操作便捷、使用灵活等特点,所以经常被运用于中小型的系统开发中[10]。MySQL数据库可以支持多线程,在同一个时间内,能够同时响应多个用户的使用需求。MySQL数据库还自带了优化器,方便设计人员在 使用过程中,快速的查询相关的数据信息。除此之外,SQL server数据库也是当下较为主流的关系型数据库,它在数据安全、系统稳定等方面还是比有所保障,但是由于其收费使用、占用内存大、操作复杂、维护成本高,一般适用于中型及以上的系统开发中。MySQL数据库的内部代码中也很多的应用程序接口,便于其他编程语言与数据库进行连接和交互,由此编写的代码具有极高的通用性和维护性,并且MySQL数据库能够迅速的处理上千条数据记录,在系统故发生障时,能通过日志文件快速恢复。MySQL数据库与SQL server数据库相比较,综合考虑成本开销、占存大小、代码通用、数据维护、操作难易程度等方面,MySQL数据库占有很大的优势,数据库设计人员也比较喜欢使用MySQL数据库对系统数据进行管理。

3系统分析

3.1系统的需求分析
在软件设计开发的整个过程中,需求分析占用的时间是比较长的,也是比较耗费人力的阶段。需求分析是设计系统功能模块的总方向,系统开发工作基本上都是围绕着需求分析而进行开展的。通过需求分析阶段,可以确定系统的基本功能设计,以及在最后的系统验收阶段,通过对照需求分析报告,验证系统的功能设计是否合理,能否满足用户的基本需要,最终判断评定系统设计是否成功完成。本文主要通过问卷调查的方式,对基于SSM的餐馆点餐系统进行了需求分析[11]。根据调查结果显示,系统用户主要有两种类型,一种是以消费为主要目的的用户角色类型,另一种是以管理为主要目的的管理员角色类型。用户角色的主要功能需求包括菜品信息查询、餐桌占用查询、订单信息管理等模块。管理员角色的主要功能需求包括注册用户管理、菜品信息管理、餐桌信息管理、订单信息管理等模块。其中,密码信息、菜品信息、订单信息等都是非常重要的数据记录,在系统设计的过程中,需要进行一定的加密处理,确保数据安全性,切实的保护好用户的重要信息。
3.2系统的可行性分析
3.2.1经济可行性
对系统进行经济可行性分析,也可以被称为对系统进行经济可行性研究,它是从社会的经济发展出发,通过研究整个的系统可行性,对成本收益情况进行全面地、具体地分析,并且根据所分析的可行性报告,为相关的投资者提供最科学的决策理论和最优的投资方案。本系统的开发促进了餐馆行业的信息化管理,管理人员可以直接通过在浏览器上发布餐馆点餐系统的网站地址,即可用户根据一定的需要,有选择的对系统相关功能进行操作。这种方式打破了时间和空间的限制,可以使得餐馆行业在较短的时间内最大化地获取利润。并且本系统所使用的开发技术和相关工具,大部分是开源的、免费的,所以可以节约很大一笔开发成本。综合上述内容分析可知,本系统的实现在经济层面上是具备可行性的。
3.2.2技术可行性
本系统是基于Java语言而进行开发的,因为Java语言容易学习、使用简单、可移植性高、稳定性强等特点,所以许多研发人员首选Java语言设计系统功能,市场上很多应用程序是由Java语言进行开发实现的。并且Java语言还具有跨平台的优点,这意味着所设计的系统是与平台无关的,也就说明由Java语言开发的系统可以支持在不同的浏览器上运行和使用。本系统使用的是开源免费的MySQL数据库,相比于其他的数据库,MySQL数据库语法简单,数据库设计人员可以尽可能快的对其学习和掌握,所以一直是中小型系统最优的数据库选择。MySQL数据库还具有占用系统内存少、功能齐全、响应速度快等特点,能够在极短时间内处理上千条信息记录,所以能够保证系统可以高效地运行和工作。综合上述内容分析可知,系统的实现在技术层面上是具备可行性的。
3.2.3操作可行性
如今,人们的日常生活已经离不开互联网的使用,在一定程度上,行业的信息化建设促进着社会的发展。人们通过使用手机上的应用程序,比如,通过使用电子商务系统,可以实现网上购物、在线支付等功能;通过使用国家官方网站,可以查看最新消息,申报个人业务;通过使用医院管理系统,可以进行网上预约挂号,在线查看体检报告等操作。在这些应用的背景下,本系统使用的是B/S开发结构模式,网站界面以人性化的设计为主,具有美观友好、交互性好等优点,用户不需要掌握一定的编程技术,直接通过对系统进行简单的功能操作,即可满足自己的使用需求。本系统还设计了一些提示信息,便于用户更好的理解系统相关功能,较快的以正确的操作方式来使用系统。综合上述内容分析可知,系统的实现在操作层面上是具备可行性的。

4系统设计

4.1系统的总体功能设计
通过结合系统分析阶段的相关内容,对系统的整体功能设计进行规划。由此可知,本系统的使用者主要可以被分为管理员角色和用户角色两类。其中,管理员角色主要的功能需求有用户信息管理、菜品信息管理、订单信息管理等模块,用户角色主要的功能需求有系统登录、查询菜品信息、查询订单信息等模块。本系统的总体功能设计如图4-1所示。
在这里插入图片描述

图4-1系统的总体功能设计
4.2数据库设计
4.2.1概念设计
在数据库设计阶段,本系统通过使用开源的、小型的MySQL数据库对系统相关的数据信息进行管理和维护[12]。数据库设计大致可以被分为概念设计和逻辑设计两个阶段。概念设计阶段是逻辑设计阶段的重要依据,同样的,逻辑设计阶段也是概念设计阶段的实现目标。概念设计阶段主要通过使用实体-联系图(E-R图)的方式,将现实世界中用户对系统的实际需求,转换成设计人员能够理解的抽象的数据库概念模型。本人通过设计E-R图,详细的对系统中的实体以及实体之间的联系进行了表达。各实体信息的E-R图如图4-2、图4-3、图4-4、图4-5、图4-6、图4-7、图4-8、图4-9所示,系统总体E-R图如图4-10所示。
在这里插入图片描述

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

在这里插入图片描述

图4-3用户信息E-R图

在这里插入图片描述

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

在这里插入图片描述

图4-5菜品订单信息E-R图

在这里插入图片描述

图4-6菜品评价信息E-R图

在这里插入图片描述

图4-7餐桌信息E-R图
在这里插入图片描述

图4-8餐桌占用信息E-R图
在这里插入图片描述

图4-9购物车信息E-R图
在这里插入图片描述

图4-10系统总体E-R图
4.2.2逻辑设计
逻辑设计阶段主要的工作是将概念设计中的E-R图,转换成方便系统进行存储和管理的二维表格形式[14]。这一阶段也可以被称为数据库的详细设计,其直接关系到系统功能模块的正常运行、数据信息的正常更新等。在设计过程中,需要充分考虑数据库的规范性和合理性,使得能够满足系统的功能和性能需求。本系统相关的数据表格设计内容如下所示。

表4-1管理员信息表
序号 列名 数据类型 说明 允许空
1 id Int id 否
2 username String 用户名 是
3 password String 密码 是
4 role String 角色 是
5 addtime Date 新增时间 是

表4-2用户信息表
序号 列名 数据类型 说明 允许空
1 id Int 编号 否
2 username String 账户 是
3 password String 密码 是
4 yonghu_name String 用户姓名 是
5 yonghu_phone String 用户手机号 是
6 yonghu_id_number String 用户身份证号 是
7 yonghu_photo String 用户头像 是
8 sex_types Integer 性别 是
9 yonghu_email String 电子邮箱 是
10 new_money BigDecimal 余额 是
11 yonghu_sum_jifen BigDecimal 总积分 是
12 yonghu_new_jifen BigDecimal 现积分 是
13 huiyuandengji_types Integer 会员等级 是
14 create_time Date 创建时间 是

表4-3菜品信息表
序号 列名 数据类型 说明 允许空
1 id Int 编号 否
2 caipin_name String 菜品名称 是
3 caipin_photo String 菜品照片 是
4 caipin_types Integer 菜品类型 是
5 caipin_kucun_
number Integer 菜品库存 是
6 caipin_price Integer 购买获得积分 是
7 caipin_old_money BigDecimal 菜品原价 是
8 caipin_new_money BigDecimal 现价 是
9 caipin_clicknum Integer 点击次数 是
10 shangxia_types Integer 是否上架 是
11 caipin_delete Integer 逻辑删除 是
12 caipin_content String 菜品简介 是
13 create_time Date 创建时间 是

表4-4菜品订单信息表
序号 列名 数据类型 说明 允许空
1 id Int 编号 否
2 caipin_order_uuid_
number String 订单号 是
3 canzhuo_id Integer 餐桌 是
4 caipin_id Integer 菜品 是
5 yonghu_id Integer 用户 是
6 buy_number Integer 购买数量 是
7 caipin_order_true_
price BigDecimal 实付价格 是
8 caipin_order_types Integer 订单类型 是
9 caipin_order_
payment_types Integer 支付类型 是
10 insert_time Date 订单创建时间 是
11 create_time Date 创建时间 是

表4-5菜品评价信息表
序号 列名 数据类型 说明 允许空
1 id Int 编号 否
2 caipin_id Integer 菜品 是
3 yonghu_id Integer 用户 是
4 caipin_commentback_text String 评价内容 是
5 reply_text String 回复内容 是
6 insert_time Date 评价时间 是
7 update_time Date 回复时间 是
8 create_time Date 创建时间 是

表4-6餐桌信息表
序号 列名 数据类型 说明 允许空
1 id Int 编号 否
2 canzhuo_name String 餐桌名称 是
3 canzhuo_photo String 餐桌图片 是
4 canzhuo_address String 餐桌位置 是
5 shiyong_types Integer 是否使用 是
6 shangxia_types Integer 是否上架 是
7 insert_time Date 添加时间 是
8 create_time Date 创建时间 是

表4-7餐桌占用信息表
序号 列名 数据类型 说明 允许空
1 id Int 编号 否
2 canzhuo_id Integer 餐桌 是
3 yonghu_id Integer 用户 是
4 canzhuozhanyong_
types Integer 餐桌状态 是
5 canzhuozhanyong_
content String 备注 是
6 insert_time Date 占用时间 是
7 create_time Date 创建时间 是

表4-8购物车信息表
序号 列名 数据类型 说明 允许空
1 id Int 编号 否
2 yonghu_id Integer 用户 是
3 caipin_id Integer 餐桌 是
4 buy_number Integer 购买数量 是
5 create_time Date 添加时间 是
6 update_time Date 更新时间 是
7 insert_time Date 创建时间 是

5系统实现

5.1个人中心
通过设计的个人中心管理功能模块,管理用户可以对相关的个人信息进行管理,比如管理用户可以更新个人账号的密码信息,修改个人账号的用户名信息等,修改密码界面设计如图5-1所示,个人信息界面设计如图5-2所示。
在这里插入图片描述

图5-1修改密码界面
在这里插入图片描述

图5-2个人信息界面
5.2用户管理
通过设计的用户管理功能模块,管理用户可以对相关的用户信息进行管理,比如管理用户可以查看用户头像信息,更新用户手机号码,删除已经注销的用户信息记录等,用户管理界面设计如图5-3所示。
在这里插入图片描述

图5-3用户管理界面
5.3菜品管理
通过设计的菜品管理功能模块,管理用户可以对相关的菜品信息进行管理,比如管理用户可以添加新菜品信息记录,更新菜品名称,删除失效的菜品信息记录等,菜品管理界面设计如图5-4所示。
在这里插入图片描述

图5-4菜品管理界面
5.4菜品评价管理
通过设计的菜品评价管理功能模块,管理用户可以对相关的菜品评价信息进行管理,比如管理用户可以查看详细的菜品评价信息,删除失效的菜品评价信息记录等,菜品评价管理界面设计如图5-5所示。
在这里插入图片描述

图5-5菜品评价管理界面
5.5菜品收藏管理
通过设计的菜品收藏管理功能模块,管理用户可以对相关的菜品收藏信息进行管理,比如管理用户可以查看详细的菜品收藏信息,删除失效的菜品收藏信息记录等,菜品收藏管理界面设计如图5-6所示。
在这里插入图片描述

图5-6菜品收藏管理界面
5.6菜品订单管理
通过设计的菜品订单管理功能模块,管理用户可以对相关的菜品订单信息进行管理,比如管理用户可以查看详细的菜品订单信息,删除失效的菜品订单信息记录等,菜品订单管理界面设计如图5-7所示。
在这里插入图片描述

图5-7菜品订单管理界面
5.7餐桌管理
通过设计的餐桌管理功能模块,管理用户可以对相关的餐桌、餐桌占用信息进行管理,比如管理用户可以查看详细的餐桌占用信息,删除失效的餐桌占用信息记录等,餐桌管理界面设计如图5-8所示,餐桌占用管理界面设计如图5-9所示。
在这里插入图片描述

图5-8餐桌管理界面
在这里插入图片描述

图5-9餐桌占用管理界面
5.8基础数据管理
通过设计的基础数据管理功能模块,管理用户可以对相关的菜品类型、会员等级类型信息进行管理,比如管理用户可以查看详细的菜品类型、会员等级类型信息,删除失效的菜品类型、会员等级类型信息记录等,菜品类型管理界面设计如图5-10所示,会员等级类型管理界面设计如图5-11所示。
在这里插入图片描述

图5-10菜品类型管理界面
在这里插入图片描述

图5-11会员等级类型管理界面
5.9轮播图管理
通过设计的轮播图管理功能模块,管理用户可以对相关的轮播图信息进行管理,比如管理用户可以查看菜品的轮播图名称,删除失效的轮播图信息记录等,轮播图管理界面设计如图5-12所示。
在这里插入图片描述

图5-12轮播图管理界面

6系统测试

6.1测试概述
系统测试主要是将系统的软件、硬件看成一个整体,对设计好的整个系统进行功能、性能等各方面的测试。系统测试阶段主要的任务是对照系统功能需求规划书,检验系统的设计是否符合要求。在测试的过程中,能够以极短的时间,测试出系统设计存在的漏洞,并尽快对其进行解决和处理,达到改进和完善系统的目的[14]。白盒测试和黑盒测试是常用的系统测试方法。白盒测试又被称为结构测试,其主要通过对系统的内部代码、结构进行测试,检测系统的代码结构、逻辑关系、数据结构等内容是否是合理的、有效的,对于某些设计不合理的代码,测试人员将形成相关的程序清单,并将其反馈给开发技术人员,再由相关人员对这部分功能代码进行一定的修改[15]。黑盒测试又被称为功能测试,其主要通过对系统的功能模块进行测试,检测系统的功能设计是否合理,功能操作能否正常实现。测试人员会记录某些设计不合理的,或者不能正常操作的功能模块,并将其撰写成相关的测试报告,反馈给开发技术人员,开发技术人员根据测试报告,对系统进行更新和完善[16]。除此之外,还有性能测试、单元测试、环境测试、安全测试等,本人主要使用功能测试对本系统进行检验。
6.2测试结果
在不同的测试环境中,比如操作系统、浏览器等,从某种程度上来说,也影响者系统的测试结果。为了加强系统的适用性和稳定性,本人通过在windows10操作系统的计算机上,使用多种的浏览器,对系统进行了详细的功能测试。测试流程图如图6-1所示,用户登录测试如图6-2、图6-3所示,菜品查询测试如图6-4、图6-5所示。
在这里插入图片描述

图6-1测试流程图

在这里插入图片描述

图6-2用户登录界面
在这里插入图片描述

图6-3用户登录成功界面

在这里插入图片描述

图6-4菜品查询界面

在这里插入图片描述

图6-5菜品查询成功界面

本系统主要使用功能测试的方法进行测试,系统测试的结果表明,本人开发的基于SSM的餐馆点餐系统,虽然还存在着一些不足,比如页面不够美观,数据安全有待加强等,但是整体来说,能够满足餐馆行业的相关功能需求,并且有利于改进整个行业的服务模式,提高服务质量,提升管理水平。因此,本系统的设计与实现基本上是比较成功。

7总结与展望

本文首先通过介绍课题的研究背景、现状、方法等内容,解释系统的研发所具备实用价值和理论依据,并且便于初步地了解和认识系统。其次通过介绍系统的关键开发技术,在技术层面上,提高系统能够被成功实现的可能性,接着通过系统分析过程,分析系统的研发在现实生活中的需求情况以及运用可行性,再通过设计系统的功能模块、数据库表格等,详细的对系统功能进行设计,有利于更快更好的实现系统,最后通过对系统进行功能测试,测试所设计的系统能否满足用户的相关需求,并对相关的测试结果进行总结。
整体来说,本系统的设计是比较理想的,但是由于本人经验不够丰富,时间不够充裕,所设计的系统功能可能不够完备,页面可能不够美观,数据安全可能有待加强。本人将提高自己的专业技术水平,学习更加先进的计算机技术,并将其运用到系统的设计中,不断地对系统进行优化和完善,在未来设计出一款功能更强大、页面更美观、数据安全更高的系统软件,提高系统的实用价值,使其能够被到运用更多的应用场景中。

参考文献

[1]王金朔,孙延辉. 基于 SSM 和 Java 的网上订餐系统设计[J]. 信息通信,2018,000(010):99-100.
[2]欧楠.计算机软件开发中 Java 语言的应用分析[J]. 信息与电脑(理论版) , 2019 (04): 110-111.
[3]周劼翀.计算机软件开发中 Java 编程语言的应用研究[J]. 信息与电脑(理论
版), 2019(05): 131-132.
[4]马梓昂,贾克斌. 基于 Web 的高性能智能快递柜管理系统[J]. 计算机应用与软件,2020,37(4):1-5,47.
[5]吴晓珊,曹旭东等.基于 B/S 架构的管理系统软件开发[J].计算机测量与控
制,2019,27(02):123-128.
[6]张海宾.基于 C/S 架构客户端嵌入 B/S 架构系统的设计与实现[J].电子世 界,2017,4(17):125-126.
[7]王茹葳.Java编程语言在大数据开发中的应用[J].电子技术, 2022, 51(01):
160-161.
[8]乔岚. 基于MyBatis和Spring的JavaEE数据持久层的研究与应用[J]. 信息与电脑(理论版),2017,378(08):79-82
[9]洪植林. 基于SSM框架的高校实验室信息管理系统的设计与实现[D]. 浙江:浙江工业大学,2016.
[10]郭冰. 基于MySQL数据库的索引优化研究[J].信息与电脑(理论 版),2019(12):154-156+163.
[11]田建勇.基于MVC架构的电子商务网站设计与实现[J].电脑知识与技术,2020,16(21):235-236.
[12]梁琰.MySQL 数据库在 PHP 网页中的动态应用研究[J]. 电脑知识与技 术,2019,15(09):7-8.
[13]陈年飞,王麒森,王志勃. MySQL 数据库中关于索引的研究[J]. 信息与电脑(理 论版),2019(05):175-176.
[14]张新华, 何永前. 软件测试方法概述[J]. 科技视界, 2012(4):125-125.
[15]王力文. 软件测试管理系统的研究与设计[D].上海交通大学,2017.
[16]施莹超. 计算机软件测试技术与开发应用探讨[J]. 信息与电脑 (理论版),2019,31(21):88-89+92.

致谢

时间过得非常的快,本人大学生活即将结束了。在整个的系统设计和论文撰写过程中,非常感谢我的导师,一直都在帮助我完成毕业任务。在导师的指导下,让我学习到了许多课本上学不到的知识,使得我成功地设计出了基于SSM的餐馆点餐系统,也顺利地撰写完了毕业论文。感谢我的同学和朋友们,当我实现系统功能模块时,我遇到了很多难以克服的问题,是我的同学和朋友们帮助我分析问题,寻找问题的最佳解决方案,而后得以成功地解决问题。感谢我的家人,一直不断地支持和鼓励我,为我提供了一个温暖的避风港,让我可以无忧无虑的在学校学习。感谢我的学校,为我们提供了一个师资力量雄厚、图书种类繁多的学习环境,让我们可以在一个良好的学习氛围中,学习到许多有价值的知识,可以使我扩充知识面,扩宽视野,积累专业知识,提高专业水平和能力。由此打下扎实的技术基础,在未来,有利于寻找更多的就业机会,更好的适应社会生活。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/592945.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

八大算法排序@计数排序(C语言版本)

目录 计数排序概念算法思想算法步骤代码实现时间复杂度空间复杂度特性总结 计数排序 概念 计数排序(Counting Sort)是一种线性时间复杂度的排序算法,适用于排序一定范围内的整数数组。它利用了输入序列的数值范围来确定每个元素在输出序列中…

【AIGC摄影构图prompt】与重不同的绘制效果,解构主义+优美连拍提示效果

提取关键词构图: 激进解构主义 在prompt中,激进解构主义的画面效果可能是一种颠覆传统和权威的视觉呈现。这种画面可能以一种极端或激烈的方式表达对现有社会结构和观念体系的批判和质疑。 具体来说,这种画面效果可能包括: 破…

德思特方案 | 易用、高效、可靠!高精度组合定位系统P-Box测试解决方案

来源:德思特测量测试 德思特方案 | 易用、高效、可靠!高精度组合定位系统P-Box测试解决方案 原文链接:https://mp.weixin.qq.com/s/VLlCAT78jQWcc8DeWlRJyw 欢迎关注虹科,为您提供最新资讯! 简介 TCU(Te…

k8s的陈述式管理

k8s的陈述式管理: 所谓的陈述式管离也就是命令行工具 优点:90%以上都可以满足 对资源的增删查比较方便,对改不是很友好 缺点:命令比较冗长,复杂,难记 声明式: k8s当中的YAML文件来实现资源管…

开源MIT协议软件 - ChatGPT Admin Web

ChatGPT Admin Web 在团队和组织内共享使用人工智能的一站式解决方案。 ​编辑 ​编辑 ​编辑 CAW 是一个自托管网络应用程序,提供开箱即用的用户管理,包括后台界面以及可配置的支付计划和相关支付界面。 GitHub Sponsor / 爱发电 功能 Features …

职场干货!谈谈AI时代必备的产品设计技能

生成式AI技术在2023年的快速进步,让各行各业都加速进入了AI时代。作为科技圈活跃了一整年的绝对爆点,AI似乎真的越来越靠谱了,“所有产品都值得用AI重做一遍”的理念正在走入现实。在这篇文章中,笔者将探讨产品设计行业的从业者们…

瞬态抑制二极管(TVS)的注意事项与布局布线?|深圳比创达电子

一、瞬态抑制二极管(TVS)的注意事项 工作电压/反向截止电压(VRVRWM)此参数不需要降额,保证大于等于工作电路最大工作电压即可,越接近越好。该参数为TVS的固有参数。VBR是TVS固有参数,与外界冲击波形无关。 被保护器件…

论el-menu自定义样式

最终效果: 原始效果: 相关代码: <!-- 菜单 --><div class"button-manage-right"><el-menu:default-active"activeIndex"class"el-menu-demo"mode"horizontal"select"handleSelect"><el-menu-itemv-fo…

转发的原理及代码演示

一、转发的概念 一个Web组件&#xff08;Servlet/JSP&#xff09;将未完成的处理通过容器转交给另外一个Web组件继续处理&#xff0c;转发 的各个组件会共享Request和Response对象。 二、代码演示 1、编写转发界面 创建空工程&#xff0c;在工程中创建javaEE模块 配置中设置…

前端开发_JavaScript基础

JavaScript介绍 JS是一种运行在客户端&#xff08;浏览器&#xff09;的编程语言&#xff0c;实现人机交互效果 作用&#xff1a; 网页特效 (监听用户的一些行为让网页作出对应的反馈) 表单验证 (针对表单数据的合法性进行判断) 数据交互 (获取后台的数据, 渲染到前端) 服…

优化模型:matlab二次规划

1.二次规划 1.1 二次规划的定义 若某非线性规划的目标函数为自变量 x x x的二次函数&#xff0c;且约束条件全是线性的&#xff0c;则称这种规划模型为二次规划。 1.2 二次规划的数学模型 min ⁡ 1 2 x T H x f T x \min \frac{1}{2}\boldsymbol{x}^{\boldsymbol{T}}\bolds…

mysql: 2006, ‘MySQL server has gone away‘

一、错误问题 这个问题是在迁移数据库、备份还原或数据导入时报错&#xff1a;2006, ‘MySQL server has gone away‘ 二、出现原因 sql操作的时间过长&#xff0c;或者是传送的数据太大(例如使用insert ... values的语句过长&#xff0c; 这种情况可以通过修改max_allowed_pac…

部署上传漏洞的靶场环境upload-labs

1、工具介绍 upload-labs是一个使用php语言编写的&#xff0c;专门收集渗透测试和CTF中遇到的各种上传漏洞的靶场。旨在帮助大家对上传漏洞有一个全面的了解。目前一共20关&#xff0c;每一关都包含着不同上传方式。 upload-labs靶场开源地址&#xff1a;&#xff1a;https://…

CMake入门教程【基础篇】打印(message)

文章目录 1. 基本用法示例 2. 打印变量的值示例 3. 打印列表的值示例 4. 打印生成器表达式的值示例 5.总结 #mermaid-svg-pXC2tr41PvHonKJa {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-pXC2tr41PvHonKJa .error-…

页面间动画之放大缩小视图

目录 1、Exchange类型的共享元素转场 2、Static类型的共享元素转场 3、场景示例 在不同页面间&#xff0c;有使用相同的元素&#xff08;例如同一幅图&#xff09;的场景&#xff0c;可以使用共享元素转场动画衔接。为了突出不同页面间相同元素的关联性&#xff0c;可为它们…

C语言——操作符

一、算数操作符 1、(加操作符) 用于将两个数相加&#xff0c;例&#xff1a;3 3结果为6 2、-(减操作符) 用于将两个数相减&#xff0c;例&#xff1a;3 - 3结果为0 3、*(乘操作符) 用于将两个数相乘&#xff0c;例&#xff1a;3 * 3结果为9 4、/(除操作符) 用于将两个…

Cesium在2d模式下Billboard位置显示不正确的解决方法

Billboard在Cesium 3d模式下位置显示正确&#xff0c;但在2d模式下位置显示不正确&#xff0c;刷新不及时。 解决办法&#xff1a; 不要设置height和heightReferencen&#xff0c;因为2d模式没有高程。

计算机毕业设计 SpringBoot的乡村养老服务管理系统 Javaweb项目 Java实战项目 前后端分离 文档报告 代码讲解 安装调试

&#x1f34a;作者&#xff1a;计算机编程-吉哥 &#x1f34a;简介&#xff1a;专业从事JavaWeb程序开发&#xff0c;微信小程序开发&#xff0c;定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事&#xff0c;生活就是快乐的。 &#x1f34a;心愿&#xff1a;点…

南昌找工作用什么APP或者招聘网站

南昌找工作用吉鹿力招聘网 通过吉鹿力招聘网&#xff0c;可以随时查看最新职位&#xff0c;跟踪简历投递动态&#xff0c;与正在进行招聘的CEO、部门负责人、HR在线沟通&#xff0c;查看其他候选人面试该职位后对面试官、公司环境的面试评价等&#xff0c;为求职者提供参考。 …

HCIA-Datacom题库(自己整理)——ACL多选

1.基于ACL规则,ACL可以划分为以下哪些类? 基本ACL 二层ACL 用户ACL 高级ACL 2.ACL分类有哪些? 基本ACL 高级ACL 二层ACL 用户自定义ACL 3.路由器A的G0/0/1接口配置信息如图,下列说法正确的有? 本接口不会转发收到的FTP报文 本接口可以和其它路由器建立OSPF的邻居…