摘 要
近年来随着高校的扩招,大学生人数越来越多,食堂里面的菜肴也变得五花八门,但学生每天都面临着不知吃什么的问题,当前学校食堂提供的服务满足不了学生多样化的需求。
校园食堂是为学生提供用餐服务的重要场所,在现阶段中,大多数校园食堂的用餐人数较多,但食堂设施却较为落后,无法满足师生的点餐服务需求。在信息化时代中,互联网+校园食堂点餐系统的设计,能有效改善上述问题,让校园食堂服务得到优化,提高食堂管理的质量效率。
本文根据对校园食堂现状的调研,通过使用Spring Boot,VUE等技术设计校园食堂点餐系统,实现菜肴推荐,菜肴收藏等功能,为学生日常选餐提供参考;还实现食堂管理,用户管理等服务,加强学校对食堂的日常管理。
关键词:校园订餐;食堂订餐;订餐系统;Spring Boot;MySQL
Abstract
In recent years, with the expansion of colleges and universities, the number of college students is increasing, and the dishes in the canteen have become varied. However, students face the problem of not knowing what to eat every day. The current services provided by the current school canteen cannot meet the diverse needs of students.
Campus canteen is an important place to provide dining services for students. At the present stage, most campus canteens have large numbers of diners, but the canteen facilities are relatively backward, which cannot meet the ordering service needs of teachers and students.In the information age, the design of the Internet + campus canteen ordering system can effectively improve the above problems, make the campus canteen service be optimized, and improve the quality and efficiency of the canteen management.
According to the investigation of the current situation of the campus canteen, through the use of Spring Boot, VUE and other technologies to design the campus canteen ordering system, realize dish recommendation, dish collection and other functions, to provide reference for students’ daily meal selection; also realize canteen management, user management and other services, strengthen the daily management of the canteen.
Key words: campus meal ordering; canteen meal ordering; meal ordering system; Spring Boot; MySQL
目 录
摘 要 I
Abstract II
第1章 绪论 - 1 -
1.1 选题背景及意义 - 1 -
1.1.1选题背景 - 1 -
1.1.2选题意义 - 1 -
1.2 校园食堂订餐系统的现状和问题 - 2 -
1.3 主要研究内容 - 2 -
1.4 论文组织结构 - 3 -
第2章 系统分析 - 4 -
2.1 系统功能需求 - 4 -
2.1.1 校园食堂管理 - 4 -
2.1.2 菜品管理 - 5 -
2.1.3 订单管理 - 5 -
2.1.4 菜品统计 - 6 -
2.1.5 我的订单 - 6 -
2.1.6 用户(学生、教职工)订餐 - 7 -
2.1.7 数据流图 - 8 -
2.2 个性化推荐技术 - 9 -
2.3 系统性能分析 - 12 -
2.4 系统开发运行环境 - 12 -
2.5.1 硬件环境 - 12 -
2.5.2 软件环境 - 13 -
2.6 本章小结 - 13 -
第3章 系统总体设计 - 15 -
3.1 系统设计原则 - 15 -
3.2 系统描述及架构设计 - 15 -
3.3 数据库设计 - 17 -
3.3.1 数据库设计原则 - 17 -
3.3.2 系统模块属性及E-R图分析 - 17 -
3.3.3 数据表的创建 - 20 -
3.4 系统功能模块设计 - 24 -
3.4.1 食堂管理 - 25 -
3.4.2 菜品管理模块 - 25 -
3.4.3 食堂订餐管理模块 - 25 -
3.4.4 菜品统计管理 - 26 -
3.4.5 系统管理 - 26 -
3.5 本章小结 - 26 -
第4章 系统的详细设计与实现 - 27 -
4.1 公共模块类 - 27 -
4.1.1 连接数据库 - 27 -
4.1.2 分页显示 - 28 -
4.1.3 返回信息格式 - 28 -
4.1.4 表格工具类 - 28 -
4.2 登录模块 - 29 -
4.3 功能模块实现 - 32 -
4.3.1 食堂管理实现 - 32 -
4.3.2 菜品管理 - 34 -
4.3.3 订单管理实现 - 40 -
4.3.4 菜品统计实现 - 43 -
4.4 本章小结 - 45 -
第5章 系统测试 - 47 -
5.1 系统测试的原理 - 47 -
5.1.1 系统测试的目的 - 47 -
5.1.2 系统测试的方法 - 47 -
5.2 系统功能测试 - 48 -
5.2.1 功能模块测试用例 - 48 -
5.2.2 用户界面测试 - 50 -
5.3 测试结论 - 50 -
5.4 本章小结 - 51 -
第6章 结论与建议 - 52 -
参考文献 - 53 -
致 谢 - 54 -
系统功能模块设计
校园食堂订餐系统是针对校园后勤部的业务处理工作而开发的食堂管理软件,本系统从功能上主要分为五个模块,分别是菜品管理、订餐管理、食堂管理、预定菜品统计、系统管理。
食堂管理:用于食堂管理员对食堂后台的管理。
菜品管理:用于校园食堂服务后台批量发布菜单、修改菜品、删除菜品、查看菜品等。
订餐管理:用于后台查看订单,消费者订餐与支付、后台处理订单。
预定菜品统计:用于后台对食堂的营业销售情况的统计与对以后菜品原材料的预估购买。
系统管理:用于系统配置管理、日志管理、用户管理、密码管理等。
校园食堂订餐系统功能结构图如图3.17所示。

图3.17 系统功能结构图
Fig. 3.17 System function structure diagram
3.4.1 食堂管理
食堂管理是方便后勤部或者校园食堂负责人对后台进行监管的模块。主要实现的是校园食堂管理员的对后台信息或者后台菜品的监管和对后台信息的增加,修改,删除和查询。
食堂管理:当食堂管理员成功认证登录后,选择食堂管理模块,查询所有该食堂的后台的信息,可以实现新增后台,逻辑删除后台,查询后台信息等功能。
3.4.2 菜品管理模块
菜品管理模块主要实现对食堂的菜品信息的批量录入、修改、删除和查询,能够让食堂后台及时的更新菜品,也让学生和教职工及时看到实时的菜品,便于选购。
菜品管理流程为由学生或教职工登录验证成功后选择校园食堂和后台后可查询实时菜品。当后台成功登陆后,可以对菜品进行增加,修改,删除和查询等操作。
3.4.3 食堂订餐管理模块
食堂订餐管理模块是校园食堂订餐系统的最为核心的一个模块。食堂订餐管理模块主要实现了学生和教职工的菜品选择后的预定,修改,清空购物车或者提交订单与订单支付的功能,可以实时推送到后台,后台对订单接收或者拒绝后的处理等等。
后台通过登录门户登陆系统,登陆后进入营业状态就可以处理订单,包括查询订单,处理订单,接收订单之后菜品准备完成之后修改订单的状态等等;学生或教职工登陆系统后,选择校园食堂和后台之后可以浏览菜品,然后添加菜品到购物车,然后清空购物车或者继续添加菜品,最后提交订单与支付或者取消订单等操作。
3.4.4 菜品统计管理
菜品统计是后台实现成本预估与营业情况的预估的一个重要功能,该模块主要实现了对用户选购情况的统计。
菜品统计主要是后台登录之后,选择预定菜品统计模块,可以查询菜品统计情况,也可以导出菜品统计为excel表格形式,便于线下分析。
3.4.5 系统管理
系统需要提供运行和维护的功能,包括系统配置管理、用户管理、密码管理和系统运行日志记录等功能。
校园食堂订餐系统用户主要分为系统管理员、食堂管理员用户、后台用户、消费者用户四类用户,系统管理员用户主要负责系统的用户管理、角色管理、密码管理和日常运行及维护工作;食堂管理员用户是整个食堂管理的最高管理者,主要职责是对后台的管理;后台主要职责是菜品管理与订单的处理;消费者(学生和教职工)主要功能是选择菜品与订单管理。
系统管理的主要使用对象是系统管理员,系统管理员具有用户管理功能、密码管理功能、配置管理功能和日志管理功能。用户管理提供角色分配的功能,包括录入、修改和删除校园食堂管理员用户信息的功能;配置管理包括配置系统运行参数和角色权限配置的功能;密码管理提供每个用户个人的密码修改的功能;日志管理主要是管理系统运行日志的功能。
本文来自:http://www.biyezuopin.vip/onews.asp?id=16449
部分代码如下:

package com.byh.biyesheji.Interceptor;import com.byh.biyesheji.pojo.Customer;
import org.apache.commons.lang.StringUtils;
import com.byh.biyesheji.service.OrderItemService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.util.Arrays;/*** 前台登陆状态拦截器  如果访问的请求没有在noNeedAuthPage数组就跳转登陆*/
public class LoginInterceptor extends HandlerInterceptorAdapter {@AutowiredOrderItemService orderItemService;/*** 在业务处理器处理请求之前被调用* 如果返回false*     从当前的拦截器往回执行所有拦截器的afterCompletion(),再退出拦截器链* 如果返回true*    执行下一个拦截器,直到所有的拦截器都执行完毕*    再执行被拦截的Controller*    然后进入拦截器链,*    从最后一个拦截器往回执行所有的postHandle()*    接着再从最后一个拦截器往回执行所有的afterCompletion()*/@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {/***   不需要登录也可以访问的*       注册,登录,产品,首页,分类,查询等等*   需要登录才能够访问的*       购买行为,加入购物车行为,查看购物车,查看我的订单等等*   不需要登录也可以访问的已经确定了,但是需要登录才能够访问,截止目前为止还不能确定,所以这个过滤器就判断如果不是注册,登录,产品这些,就进行登录校验* 1. 准备字符串数组 noNeedAuthPage,存放哪些不需要登录也能访问的路径* 2. 获取uri* 3. 去掉前缀/fore* 4. 如果访问的地址是/fore开头* 4.1 取出fore后面的字符串,比如是forecart,那么就取出cart* 4.2 判断cart是否是在noNeedAuthPage* 4.2 如果不在,那么就需要进行是否登录验证* 4.3 从session中取出"cst"对象* 4.4 如果对象不存在,就客户端跳转到login.jsp* 4.5 否则就正常执行*/HttpSession session = request.getSession();String contextPath=session.getServletContext().getContextPath()+"/fore";//准备字符串数组 noNeedAuthPage,存放哪些不需要登录也能访问的路径String[] noNeedAuthPage = new String[]{"Index", //首页"DetailUI", //商品详情页"RegisterUI",  //注册页"Register",  //注册"LoginUI",  //登陆页"Login",     //登陆"IsLogin",  //判断是否登陆"MtLogin", //模态登陆验证"CstLoginOut", //退出"DelOrderItem",//删除购物车项"CreateOrder", //提交订单"Payed", //支付成功"NameLike", //模糊搜索商品"FindCategory", //查看分类下的商品"Zixunadd", //添加资讯"LoginMsg", //登陆返回信息};//获取uriString uri = request.getRequestURI(); //访问首页 /fore/foreIndex//去掉前缀/foreuri = uri.substring(5,uri.length());  //去掉前缀后 /foreIndex//如果访问的地址是/fore开头if(uri.startsWith("/fore")){//判断是否是在noNeedAuthPageString method = StringUtils.substringAfterLast(uri,"/fore" ); // 取出/fore后的字符串:Index//如果不在,那么就需要进行是否登录验证if(!Arrays.asList(noNeedAuthPage).contains(method)){Customer customer =(Customer) session.getAttribute("cst");if(null==customer){response.sendRedirect("foreLoginUI");return false;}}}return true;}/*** 在业务处理器处理请求执行完成后,生成视图之前执行的动作* 可在modelAndView中加入数据,比如当前时间*/@Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {// super.postHandle(request, response, handler, modelAndView);}/*** 在DispatcherServlet完全处理完请求后被调用,可用于清理资源等** 当有拦截器抛出异常时,会从当前拦截器往回执行所有的拦截器的afterCompletion()*/@Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {// super.afterCompletion(request, response, handler, ex);}
}




























基于springboot的校园食堂订餐系统相关推荐

  1. 基于Java毕业设计校园食堂订餐系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计校园食堂订餐系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计校园食堂订餐系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S架构 开 ...

  2. 基于springboot+mybatis-plus框架搭建的校园食堂订餐系统

    基于springboot+mybatis-plus框架搭建的校园食堂订餐系统 客户登陆界面 视频链接 部分主界面 购物车界面 管理员界面(也可称为用户) 视频链接 商品管理界面

  3. 计算机毕业设计Java校园食堂订餐系统(源码+系统+mysql数据库+Lw文档)

    计算机毕业设计Java校园食堂订餐系统(源码+系统+mysql数据库+Lw文档) 计算机毕业设计Java校园食堂订餐系统(源码+系统+mysql数据库+Lw文档) 本源码技术栈: 项目架构:B/S架构 ...

  4. java毕业生设计校园食堂订餐系统计算机源码+系统+mysql+调试部署+lw

    java毕业生设计校园食堂订餐系统计算机源码+系统+mysql+调试部署+lw java毕业生设计校园食堂订餐系统计算机源码+系统+mysql+调试部署+lw 本源码技术栈: 项目架构:B/S架构 开 ...

  5. java计算机毕业设计校园食堂订餐系统源码+数据库+系统+lw文档+部署

    java计算机毕业设计校园食堂订餐系统源码+数据库+系统+lw文档+部署 java计算机毕业设计校园食堂订餐系统源码+数据库+系统+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语言:Ja ...

  6. 计算机毕业设计ssm校园食堂订餐系统531p9系统+程序+源码+lw+远程部署

    计算机毕业设计ssm校园食堂订餐系统531p9系统+程序+源码+lw+远程部署 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软件:idea eclipse 前端技术:Layui. ...

  7. java-php-python-ssm校园食堂订餐系统计算机毕业设计

    java-php-python-ssm校园食堂订餐系统计算机毕业设计 java-php-python-ssm校园食堂订餐系统计算机毕业设计 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 ...

  8. 基于SSH的校园网上订餐系统

    [A-005]基于SSH的校园网上订餐系统 开发环境: Eclipse/MyEclipse.Tomcat8.Jdk1.8 数据库: MySQL 项目介绍: 为了顺应时代潮流的发展,便捷人民的生活,提高 ...

  9. 计算机毕业设计(附源码)python校园食堂订餐系统项目运行

    项目运行 环境配置: Pychram社区版+ python3.7.7 + Mysql5.7 + HBuilderX+list pip+Navicat11+Django+nodejs. 项目技术: dj ...

最新文章

  1. 目标检测算法终结篇:YOLOv7(非正式版)正式开源
  2. 在EditText里插入图片,基于图库选择之后
  3. 3、Angular JS 学习笔记 – Controllers [翻译中]
  4. OpenCV Stitching 工程搭建
  5. 计算机的3类系统总线分别是_《深入理解计算机系统》读书笔记—第六章、存储器层次结构...
  6. Oracle全文索引之六 附:CONTAINS函数
  7. python图片隐写_基于python的LSB隐写与分析
  8. “编程能力差!90%输在了这点上!”谷歌开发:其实你们都是瞎努力
  9. FIT 2019 | 安全人员面临的机遇与挑战
  10. matlab一阶惯性滤波,为什么一阶惯性环节也具有滤波的作用
  11. 会议论文有影响因子吗_论文投稿——会议论文能否被SCI或EI收录
  12. 算法 图3 六度空间
  13. java编写数独_简单实现java数独游戏
  14. 基于tesseract的文字识别
  15. 《Android之大话设计模式》--设计原则 第二章:单一职责原则 乔峰VS慕容复
  16. 2006年十二生肖开运大预言
  17. 用iSee图片专家制作淘宝店标教程
  18. 英文月份简写、星期简写
  19. 基础题库:12 甲流疫情死亡率
  20. Linux查看进程信息相关(Ubuntu)

热门文章

  1. python实现简单的求矩阵的逆
  2. Quartus Prime 软件 USB-blaster 驱动安装失败【已解决】
  3. iOS开发监测手机流量使用情况
  4. 安装黑苹果时提示未能与服务器,安装黑苹果遇到的问题与解决记录
  5. linux源代码是用,阅读Linux源代码-使用lxr和glimpse
  6. NNI speedup_model()代码笔记
  7. Aria2远程下载方案部署(CentOS7+Aria+AriaNG+Nginx)
  8. html都有哪些事件,HTML有哪些事件属性?
  9. 基于51单片机的液位监测系统仿真数码管显示程序原理图
  10. 物联网--ESP32开发笔记(2) domoticz mqtt的一些坑的记录