• 基于JavaWeb的订餐管理系统的设计与实现


    项目描述

    临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里根据疫情当下,你想解决的问题,今天给在家介绍一篇基于JavaWeb的订餐管理系统的设计与实现。

    功能需求

    订餐管理系统是基于实现这样一个目标:客户在登录系统后,可以浏览餐厅的所有点菜信息,并可以关键一个或多个订单,订购不同数量的各种菜,然后提交给系统,餐厅服务然登录系统后可以看到客户的订单信息,并及时根据订单通知初始做菜,做好菜后把菜送到指定的地点。餐厅管理员登录系统后可以添加或者删除菜谱上的菜。

    具备以下功能:
    • 用户登录注册
      只有注册用户才可以使用该平台,新用户可通过自己的手机号注册账号,成功后可以设置特色的用户名以及头像,登录用户在一个月内可以自动登录。用户可以选择绑定银行卡,还可以收藏自己喜欢的商家。在每次外卖送达后,用户可以对商家进行评价打分。

    • 菜单浏览
      用户打开商家后,可以看到商家的所有菜品,在最上方除了商家名以外会显示商家的优惠(例如折扣,满减等),在菜品栏中也会优先显示折扣商品,商品顺序按照销量从高到低排列,一些特殊的商品也会有更多的选项(例如加辣,加冰等)

    • 购物车
      用户选中的菜品将会自动加入到购物车当中,购物车会计算用户所选菜品的总金额,用户可以在购物车中对所选的菜品进行增删操作。该购物车是在菜单浏览界面的一个小窗口,是为了让用户能清楚自己选了那些东西而设置的,只要用户点一下购物车的标志即可弹出。

    • 订单系统
      当用户选好自己想要的菜品后,点击确认系统就会生成一张订单表,订单除了罗列用户所选的菜品之外,还会计算出所有菜品在满减优惠之后,用户所需支付的实际金额,让用户决定是否选择支付,除此之外,用户可以选择在订单上留言,商家外卖小哥都可以看到留言。

    • 后台管理
      管理员可以对餐厅网上订餐系统上的菜单进行添加、删除和修改,比如更改菜单的图片,价格,菜单的描述,更换新品,添加新菜等。当用户下订单时,由管理员确认后交给商家。

    系统功能模块框架图

    在这里插入图片描述

    部分效果图

    首页
    在这里插入图片描述

    用户登录界面
    在这里插入图片描述
    家政服务

    在这里插入图片描述
    订餐管理

    在这里插入图片描述

    点餐界面:

    在这里插入图片描述

    购物车界面
    在这里插入图片描述

    后端员工管理
    在这里插入图片描述

    数据库设计

    系统中用到了15张表,针对每个表都进行了设计,下面对部分核心表进行汇总罗列展示。
    (1)用户信息表
    在这里插入图片描述

    (2)菜谱信息表
    在这里插入图片描述

    (3)顾客信息表
    在这里插入图片描述

    (4)订单信息表
    在这里插入图片描述

    部分代码
    public void doGet(HttpServletRequest request, HttpServletResponse response)
    			throws ServletException, IOException {
    		Validate vd = new Validate();
    		String name = vd.getUnicode(request.getParameter("name"));
    		String types = vd.getUnicode(request.getParameter("types"));
    		String sql = "select * from s ";
    		String[] args = {"id","name","author","publishing","number","price",
    "storage","brief","type","tate","sums","imgpath","price1","sums1"};
    		if(name != null && !name.equals("")){
    			sql += "where name like '%"+name+"%'";
    //构建对菜品名称查询的SQL语句
    		}
    		if(types != null && !types.equals("")){
    			sql += "where type='"+types+"'";
    //构建对菜品类别查询的SQL语句
    		}
    		SelectBean sb = new SelectBean();
    		ArrayList al = sb.select(sql, args);
    		request.setAttribute("search", al);
    		RequestDispatcher rd=request.getRequestDispatcher("/qiantai/search.jsp");
    //跳转到前台菜品搜索页面
            rd.forward(request,response);
    	}
    	public void doPost(HttpServletRequest request, HttpServletResponse response)
    			throws ServletException, IOException {
    		doGet(request,response);
    	}
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    安装部署需求

    IDEA运行启动

    系统测试设计

    功能测试主要包括五项内容:适用性、准确性、可操作性、依从性、安全性。

    本项目用到的技术和框架

    1.开发语言:Java
    2.开发模式:B/S
    3.数据库:MySQL
    4.框架:springboot+Mybatis+Bootstrap

    本项目中的关键点

    此次系统的设计过程主要运用到了我们在学校以及公司经常提及使用的B/S结构。所谓的B/S系统就是浏览器、服务器的系统结构。网上订餐系统使用B/S结构,主要就是需要服务端的计算机安装数据库以及服务器。而在客户端,一个浏览器就足够。服务器在服务端运行,浏览器在客户端运行。

    环境工具

    开发工具 Eclipse/IDEA
    语言 JDK1.8 、JSP、Java
    硬件:笔记本电脑;
    软件:Tomcat8.0 Web服务器、Navicat数据库客户端、MySQL;
    操作系统:Windows;
    其它软件:截图工具、常用浏览器;

  • 相关阅读:
    小程序中如何(批量)打印订单的小票、标签、发货单和电子面单
    c++多线程学习11 packaged_task异步调用函数打包
    C++数据存储、表示形式和基本运算
    常用Linux系统及区别
    docker命令大全英文版在线手册
    Mysql---三张表(student,课程,分数) 查询课程为数学的学生姓名,编号,成绩
    飞桨EasyDL-Mac本地部署离线SDK-Linux集成Python
    强缓存与协商缓存
    算法提高 第一期 KMP扩展算法
    YOLO-NAS详细教程-训练深度学习分割模型-从图像中去除背景
  • 原文地址:https://blog.csdn.net/mxg74110/article/details/127835902