题目: 美食推送系统的设计与实现
订餐推送系统的设计与实现
摘要
本文将地方特色美食作为线上点餐推送系统的研究对象,不仅有益于地方特色菜品进入大众视野,还有有益于系统的推广,本次毕业论文题目为订餐推送系统的设计与实现。美食系统直观、有效、便捷的特点能够很大程度上为用户提供更便捷的服务,相较于传统琳琅满目、用户头昏眼花的系统,由此而生一款更具个性化的线上点餐系统十分必要。
本设计使用SSM框架和MYSQL关系型数据库,系统拥有用户及管理员两个角色。客户端用户主要的功能包括登陆注册、美食类型及详细信息的察看、用户收藏管理、购物车管理、订单信息管理、意见反馈及评价、个人信息修改和猜你喜欢的推送。服务端管理员负责:系统用户管理、通知公告管理、美食类型管理、美食信息管理、订单管理、打分评价管理和意见反馈管理。本系统将固原市的美食作为主要的推送对象,将固原市美食的相关数据存储在MYSQL数据库当中。该项目的首要目标是为相关有需求的用户提供服务,其次是希望通过该途径能够对一些鲜为人知的固原市美食进行推广。
关键字:订餐;SSM;美食;MYSQL;JSP
Design and implementation of a meal ordering and pushing system
Abstract
Taking local specialties as the research object of the ordering push system, which is not only beneficial to carry forward the local specialties, but also promotes the system, The topic of this article is the design and implementation of the food ordering push system. The intuitive and effective and convenient characteristics of the food system can largely provide users with more convenient services, compared with the traditional dazzling and dizzy system, it is necessary to create a more personalized online ordering system.
This design uses the SSM framework and the MYSQL relational database, which has two roles user and administrator. The functions implemented by client users include login registration, viewing of food types and food details, user collection management, shopping cart management, order information management, feedback and evaluation, modifying personal information and guessing your favorite push. The server administrator is responsible for: system user management, notification and announcement management, food type management, food information management, order management, scoring evaluation management and feedback management. This system takes the food of Guyuan City as the main push object, and the data related to Guyuan City cuisine is stored in the MySQL database. The primary goal of the project is to provide services to some users in need, and secondly to spread some little-known Guyuan City cuisine through this channel.
Keywords: Order; SSM; Delicious food; MYSQL;JSP
目录
第一章 绪论 1
1.1背景及意义 1
1.2系统概述 2
1.3组织与结构 2
第二章 关键技术 4
2.1开发工具 4
2.2关键技术 4
第三章 需求分析 7
3.1系统需求分析 7
3.2 系统用例分析 7
3.3 业务流程分析 9
3.4 系统功能模块 10
第四章 数据库设计 13
4.1数据库概念设计 13
4.2数据库逻辑结构设计 15
第五章 系统实现 21
5.1用户模块的实现 21
5.1.1 登录注册模块 21
5.1.2食品浏览模块 22
5.1.3通知公告模块 23
5.1.4购物车模块 24
5.1.5打分评价模块 25
5.1.6用户中心模块 26
5.1.7猜你喜欢模块 27
5.2管理员模块实现 29
5.2.1 食品信息管理模块 29
5.2.2 评价管理模块 31
5.2.3 用户信息管理模块 31
5.2.4订单管理模块 32
第六章 系统测试 34
6.1登录测试 34
6.2系统部分功能测试 36
第七章 总结与展望 39
7.1 总结 39
7.2 展望 39
致 谢 41
参考文献 42
第一章绪论
科学技术的发展,整个社会信息化的快速发展,对科技文献信息保障提出了迫切的需求,如果保障体系跟不上去,信息安全的基础性工作跟不上,就会拖信息化的后腿[1]。而传统信息源的概念变得模糊了,人们通过互联网渠道各种各样信息。现代信息技术从根本改变了美食管理系统的工作环境于技术手段,又给网上美食管理系统的发展提供了一个良好的机遇。当下社会上的美食管理系统更需要以一种全新的面貌展现出来。
1.1背景及意义
在互联网+时代,O2O(Online To Offline)电子模式的快速发展给餐饮业带来了巨大的机遇与挑战[2]。基于O2O模式的餐饮外卖成为团购之后餐饮企业重点关注、发展前景大的领域[3]。伴随这人们不断提高的生活质量,同时餐饮行业为提高人民的生活质量以及在就业增长,发挥了无可厚非的作用。线上的美食推送系统作为现在科技发展的一个便捷服务,它不仅仅避免了到场之后不知道吃什么,而且基本上都是可以直接结算的,推送系统提前发布菜单,用户根据自己的喜好进行预点餐,有充足的时间可以选择自己喜爱的菜品。外卖服务平台主要以美团和饿了么为代表,现在美团市场占有率为66.7%,饿了么(含星选)市场占有率31.6%[4]。由于餐饮行业的发展迅猛如雷,尤其是随着各种科技行业创新以及智能手机的普及。无米之炊的家庭越来越多,外卖成为餐饮行业的新盈利方式,而以美团为例,客户下载安装APP,使用点餐软件进行点餐,不需要花费太多时间就能买到快餐产品[5]。而现在市场中已成型的点餐应用唯一还不具备的功能是不能够区分受惠人群,只能进行一些大而广且杂乱的网上订餐推送,不能将本地的特色菜纳入推送系列。为此本课题专门设计出一款针对本地菜感兴趣人群所喜欢的软件,在一定程度上将本地区内的特色美食筛选放入本系统中,对于客户端用户来讲本系统作到了“用完即走”的概念,操作维普简易,并在系统中加入猜你喜欢的模块以达到用户的个性化推送效果。
本系统只将固原市特色菜作为线上点餐推送系统中所推送的的美食,意义在于推广和宣传固原市的特色菜品,提高顾客对固原市美食的认知和兴趣。同时,系统也可以帮助餐厅提高销售额和效率,减少人力成本和误差率。通过分析顾客的历史点餐记录、口味偏好、固原市特色菜品的销售情况等数据,系统可以在猜你喜欢中为顾客推送最符合其口味和喜好的固原市特色菜品,提高顾客的满意度和忠诚度。此外,系统还可以提供在线支付、预约等功能,方便顾客进行线上交易和预订。同时,系统也可以为固原市的餐饮业提供数据支持,帮助其了解市场需求和趋势,优化菜品搭配和库存管理,提高经营效益和竞争力。总之,基于固原市特色菜线上点餐推送系统的意义在于促进固原市餐饮业的发展,提高顾客的消费体验和满意度,同时也为固原市的文化和旅游产业做出贡献。
1.2系统概述
本系统的设计是运用了的在校所学的专业知识来开发此系统,尽可能的满足使用者的需求,本论文描述了订餐推送系统开发的整个流程。用户通过在互联网访问该平台,可以根据自身需要、浏览记录、收藏的情况等因素来决定食品的推送方式。这个系统主要是用自然语言编写的系统,主要功能是对外订餐功能的实现。将该系统应用到了网络领域,满足了绝大多数有需求的人们。本系统的立场新颖,实现了一般外卖网站的基本需求,如网站拥有管理员和前台用户。
允许用户可以在登录系统之后,操作察看美食详细信息,以及能够看到系统的猜你喜欢中为顾客推送最符合起口味喜好的的特色菜品,可以察看新闻及个人资料;单击食品图片名称可以看到食品明细,在食品明细中可进行下单和收藏,系统会根据用户的操作将食品加入个人收藏夹或者加到购物车里面。
允许管理员进入系统管理端之后可以对食品、分类、公告、用户等进行增删改查的操作,单击相应管理操作后,下方会显示具体的察看、新添、更正及删除按钮,例如单击增加食品超链接可进入增加食品页面。
1.3组织与结构
本课题的题目是订餐推送系统的设计与实现,总共设置有七个章节的内容,通过对这七章的论述对本课题进行详细的介绍。
第一章绪论部分,通过对本系统的研究背景及目标、概况及结构的介绍,针对本系统研究大致目标的思路框架进行说明。
第二章关键技术部分,通过阐述本系统所使用的开发工具以及关键技术,对本系统的底层实现的软硬件系统进行说明。
第三章需求分析部分,通过阐述系统在开发之前的需求求分析,其次分析本系统用户及管理员用例,再分析本系统用户及管理员的业务流后,拟定出来本系统预期实现的具体功能并且制作出相对应的系统功能模块图。
第四章数据库设计部分,通过本系统具体功能设计出用于系统实现的实体关系图,通过图中属性设计相应的数据库表。
第五章系统实现部分,通过对本系统用户的完整模功能的展示,以及对管理员的完整功能的展示,对本系统实现的前后端进行预演。
第六章系统测试,通过阐述本系统用户和后端管理员的登录测试,本系统用户在使用网站过程中至关重要的功能进行测试,侧重体系用户体验的重要性。
第七章总结与展望,通过阐述对本系统设计与开发的总结,以及对系统存在问题的解决以及日后的改进方向,对后期改进的展望。
第二章关键技术
2.1开发工具
如果说硬件是一个系统的根,那么软件就是一个系统的颈,软件项目就是根茎接触的果实。本系统WEB网站所采用的软件环境配置如下,选择Window10作为操作系统,使用MYSQL作为后台存储数据的库,选择IDEA、NAVICAT 和TOMCAT作为本系统的开发软件。
(1)MYSQL
MYSQL是一个开源的关系型数据库管理系统,它采用了客户端/服务器架构可以在各种操作系统上运行[6]。MYSQL支持多个编程语言(如C、Python、JAVA等),并且具有高性能、可靠性和扩展性。以下是MYSQL数据库的一些特点:1)支持各种各样的操作系统:MYSQL支持具有各式优点的存储引擎,可以根据应用场景选择适合的存储引擎。2)重视数据的保密:它提供了诸多的数据安全功能,比如密码保护、SSL加密等,可以有效地保护用户数据。3)可扩展性好:MYSQL可通过增加硬件资源(如CPU、内存)或者使用主从复制等方式来进行水平或者垂直扩展。4)性能优异:MYSQL采用了一些高效的技术来提高性能,例如索引、查询缓存等。5)易于使用和管理:MYSQL有着完善的文档和社区支持,并提供了诸多简单易用的管理工具以便使用者对数据库进行管理。总之MYSQL是一款功能强大、稳定可靠的数据库管理系统,在WEB网站中具有宽泛无边的应用场景。
(2)TOMCAT
本系统应用TOMCAT当成WEB页面的服务器环境,使得JAVA代码可以在其中运行,从而实现动态WEB页面的生成。并且该服务器开源,使得该容器广泛应用于JAVA WEB的项目开发中。TOMCAT作为一个开源容器,不仅实现了JAVA Servlet和还提供了资料Servlet的Pages规范,能够处理HTTP有关的请求和响应[7-8]。
2.2关键技术
本课题应用SSM(Spring+SpringMVC+ Mybaits)技术当作WEB应用的开发框架组合,涵盖了控制层、持久层、展示层的各个方面,对开发者来说上手简单,构建方便,并且有较好的扩展性和移植性[9]。本系统搭建在WEB服务器上面,使用H5、CSS和JSP等技术美化系统页面。
(1)SSM简介
目前的软件开发–般都利用三层架构:视图层、服务层、数据访问层,SSM框架也是按照这三层架构的方式进行规划的[10]。Spring是一种快速开发框架,能够帮助我们更快地构建一个基于Spring的WEB应用程序,其中装载了项目中的JAVA类来帮助本系统管理对象与依赖之间的关系[11]。SpringMVC能够对Servlet进行封装,负责控制后端与服务器之间的数据交互,它提供了一种简单的方式来处理HTTP请求和响应。Mybatis能够帮助开发人员更加快捷的完成工作,作为一种持久层框架,避免了人为的JDBC手动配参[12],同时也提供了分页、缓存等功能,可以更加方便地操作数据库。
SSM流程中,用户发送的请求首先前端控制器拦截,由业务层调取相应的持久层对象,Mybatis由此操作数据后将获取到的值一路再返回到控制层,最后由视图层相应到用户。业务流程如下图2.1所示。
图2.1 SSM业务流
(2)简介H5/CSS
H5是HTML5的简称,于十九世纪诞生,是一种用于WEB页面开发的标准。它提供了许多新的特性和API,如语义对标签、支持多媒体技术、支持离线存储技术等,可以帮助开发者构建更加丰富和交互性的WEB页面[13]。
CSS是层叠样式表的缩写,是一种用于WEB页面粉饰的技术。它能通过语法元素控制HTML元素的属性,最终达到网页的样式、布局、字体、颜色等自定义的效果。CSS可以帮助开发者实现更加美观和可读性强的WEB页面。
(3)JSP简介
JSP(Java Server Pages)是一种运行在服务端页面的技术,它首肯编写人员把JAVA代码和HTML片段镶嵌起来建立网页,ff同时通过JSP标签库和EL表达式来访问后台数据并实现业务逻辑处理[14]。JSP技术通过在服务器端生成动态内容,实现了对前端页面进行动态化的需求,也方便了开发人员对后台逻辑进行管理和维护。JSP还具有跨平台性、易于维护和扩展等优点,因此在企业级应用中广泛使用。
第三章需求分析
3.1系统需求分析
一般都由用户提出需求,由相应人员对该需求实现的可能性斟酌分析,其次拟定目标后会由相应人员进行设计,设计完成之后由用户确定[15]。得到用户确定即可进行系统的总体设计,首先是对系统功能的设计,再此过程中用户可以提出扩充功能的意见以供设计者制作出出功能更具完善,更加强大的系统,最后对系统进行测试,测试全部通过即可全面推广。
本系统中前端用户需要完成如下功能,游客通过在线注册成为系统中的用户,网站中的用户能操作察看美食详细信息、并可以通过美食类型等条件对食品信息进行查询。网站用户还可以收藏自己喜欢的食品。用户通过点击已发布的食品图片即在购物车中完成下单美食,用户允许在食品详情中察看食品的点击量、销售量以及历史评价等信息对食品进行下单操作,用户在食品详情页面中,系统会跟据该会的历史订餐记录以及其他系统用户的销售数据预测用户可能喜欢的食品,并且反馈给用户选择,最后用户可以通过察看购物车来完成下单美食的结算,最后用户可以在个人中心察看历史订单来完成对已用餐美食的星级打分评价。
本系统中的管理员的功能如下,首先是用户管理,管理员只能察看和清理除用户基本信息,同时以保护用户隐私为目的,管理员不能私自修改用户信息也不能察看到顾客的密码。其次对美食管理,囊括对美食数据的增删查改。用户用膳完成后的打分管理,管理员可以察看系统用户对食品的评价、如有不当的言论则可操作删除。公告管理:管理员在后台将新食品加入系统中时,为提高该食品的点击率和销售量等,可以发布新公告信息以让系统中的用户知悉,管理员可执行的功能包括增删查改。最后是订单管理,管理员可察看客户端用户已就餐食品的订单信息,对已完线上支付款操作的订单可以执行发货操作,同时也可清除该订单信息。
3.2 系统用例分析
订餐系统是餐厅和顾客之间互动的重要环节,它的设计直接关系到顾客用餐体验和餐厅服务效率。本系统将从用户和管理员两个角度出发,对点餐系统的用例进行分析,以帮助开发者更好地理解和设计系统。
管理员的主要工作如下:系统用户管理、通知公告管理、美食类型管理、美食信息管理、订单管理、打分评价管理和意见反馈管理。而管理员的主要工作就是围绕着商家,管理各式美食,为用户的操作保驾护航。下图3.1为管理员用例。
图3.1 管理员用例
用户的主要工作如下:用户能够在线登陆注册、浏览食品、购物⻋管理、客户中⼼和察看订单。客户中⼼中设计了收藏食品、评论及打星评分、⽹站反馈和更正信息;购物车的支付及下单,察看订单后的提交评论,察看公告及察看美食同时向用户推送猜你喜欢。下图3.2为用户用例。
普通用户功能模块图
管理员功能模块图
美食推荐系统部分功能演示
基于协同过滤算法的美食推荐系统
………………
………………
………………
参考文献
[1]李莉. 科技文献信息资源建设保障体系研究[D]. 广西民族大学, 2008.
[2]刘佩琦. O2O模式下餐饮外卖顾客满意度研究[D]. 中南林业科技大学, 2017.
[3]何佳威. O2O模式下餐饮外卖行业消费者满意度影响因素研究[D]. 北京邮电 大学, 2020.
[4]王何娟. 基于SERVQUAL模型的饿了么外卖平台服务提升研究[D]. 东华大 学, 2022.
[5]吴燕君. 美团外卖公司服务营销策略研究[D]. 广州大学, 2022.
[6]徐长庆,李雨晴,李德友等. 基于PostgreSQL与PostGIS的空间数据一体化 方案设计与实现[J]. 山东理工大学学报(自然科学版), 2023, 37(03):1-7.
[7]戴伟. 基于Nginx高性能Web服务器的理论研究与性能改进[D]. 南京邮电大学, 2019.
[8]顾唐杰. 基于TOMCAT服务器的宿舍群智能管理平台系统设计[D]. 贵州大学, 2022.
[9]薄志强. 基于SSM框架的网上商城系统的设计与实现[D]. 西安电子科技大学, 2020.
[10]刘小杰, 张玉洁, 李欣, 刘然, 张智峰, 陈树军. 基于大数据的高炉炉温监测预警系统[J]. 中国冶金, 2023, 33(02):98-105+140.
[11]陈赛. 基于BS架构酒店对公业务系统的设计与实现[D]. 南昌大学, 2022.
[12]黎邦群. 基于SULCMIS的手机OPAC研究[J]. 图书馆论坛, 2014, 34(10):84-92+121.
[13]覃志宏. 移动订餐APP系统的设计与实现[D]. 广西大学, 2021.
[14]张宇轩. 基于多尺度融合卷积神经网络的鱼群计数系统设计与实现[D]. 大连海洋大学, 2023.
[15]刘业成. 美食广场智慧餐饮平台的设计与实现[D]. 东南大学, 2021.