学习Java实现餐厅点餐系统,本文实现该系统的功能截图,和数据库设计SQL语句,系统功能图,功能优势等供大家参考

1.点餐管理系统背景

随着科技的发展,去饭店吃饭点餐和结账都是以线上操作的形势完成。

a.和现在有的系统比较起来,本系统有餐桌管理,菜系管理,菜名管理,订单管理,订单详情等功能。

b.和现有系统比较起来,本系统是B/S结构,一般点餐系统为C/S结构,性能方面不如B/S结构,并且C/S接口需要安装客户端,客户端压力很大,我的系统只需要电脑或者手机具有浏览器,在同一局域网就可以进行订餐。

c.从架构方面来讲,我们的系统为分布式架构,传统的点餐系统没有我们的架构合理。

2.点餐管理系统技术架构

主要技术

Spring、SpringMVC、Mybatis

JSP、JSTL、jQuery、HTML、CSS、JS

Mysql

bootstrap

开发工具和环境

Eclipse

Maven

Tomcat 7

JDK 1.8

Mysql 5.6

Win10 操作系统

3.系统架构及功能

4.数据库设计

-- 餐桌表

CREATE TABLE `dinnertable` (

`id` int(11) NOT NULL AUTO_INCREMENT,--餐桌id

`tableName` varchar(20) DEFAULT NULL, -- 餐桌名称

`tableStatus` int(11) DEFAULT "0", -- 餐桌状态 0表示空闲状态 1表示已预订状态

`orderDate` datetime DEFAULT NULL, -- 预定餐桌时间

PRIMARY KEY (`id`)

)

-- 菜系表 川菜,湘菜等

CREATE TABLE `foodtype` (

`id` int(11) NOT NULL AUTO_INCREMENT, --菜系id

`typeName` varchar(20) DEFAULT NULL, --菜系名称

PRIMARY KEY (`id`)

)

-- 菜名表

CREATE TABLE `food` (

`id` int(11) NOT NULL AUTO_INCREMENT, -- 菜名id

`foodName` varchar(20) DEFAULT NULL, -- 菜名

`foodType_id` int(11) DEFAULT NULL, -- 所属菜系

`price` double DEFAULT NULL, -- 价格

`mprice` double DEFAULT NULL, -- 会员价格

`remark` varchar(200) DEFAULT NULL, --菜名描述

`img` varchar(100) DEFAULT NULL, -- 菜名图片对应路径

PRIMARY KEY (`id`),

KEY `fk_food_foodType_id` (`foodType_id`),

CONSTRAINT `fk_food_foodType_id` FOREIGN KEY (`foodType_id`) REFERENCES `foodtype` (`id`)

)

-- 订单表

CREATE TABLE `orders` (

`id` int(11) NOT NULL AUTO_INCREMENT, -- 订单id

`table_id` int(11) DEFAULT NULL, -- 餐桌id

`orderDate` datetime DEFAULT NULL, -- 下单时间

`totalPrice` double DEFAULT NULL, -- 总金额

`orderStatus` int(11) DEFAULT "0", --支付状态 0未支付 1已支付

PRIMARY KEY (`id`),

KEY `order_table_id` (`table_id`),

CONSTRAINT `order_table_id` FOREIGN KEY (`table_id`) REFERENCES `dinnertable` (`id`)

)

-- 订单明细表

CREATE TABLE `orderdetail` (

`id` int(11) NOT NULL AUTO_INCREMENT, -- 订单明细id

`orderId` int(11) DEFAULT NULL, -- 所属订单id

`food_id` int(11) DEFAULT NULL, -- 菜名id

`foodCount` int(11) DEFAULT NULL, -- 订餐数量

PRIMARY KEY (`id`),

KEY `orderDetail_order_id` (`orderId`),

KEY `orderDetail_food_id` (`food_id`),

CONSTRAINT `orderDetail_food_id` FOREIGN KEY (`food_id`) REFERENCES `food` (`id`),

CONSTRAINT `orderDetail_order_id` FOREIGN KEY (`orderId`) REFERENCES `orders` (`id`)

)

-- 管理员表

CREATE TABLE `admin` (

`id` varchar(20) NOT NULL, -- 管理员id

`name` varchar(20) DEFAULT NULL, -- 管理员姓名

`password` varchar(32) DEFAULT NULL, -- 管理员密码

PRIMARY KEY (`id`)

)

5.后台管理功能

登录系统首页

餐桌列表:显示餐桌详情,可以通过上面搜索按钮搜索类似餐桌,也可以删除餐桌

添加新餐桌功能

菜系列表:显示菜系详情,可以通过上面搜索按钮搜索类似菜系,也可以删除菜系

修改菜系名称功能

添加菜系功能

菜品列表:显示菜品列表,可以通过上面搜索按钮搜索类似菜品,也可以删除菜系

修改菜品功能:可以修改菜系所属菜系、菜品名称、价格、简介、图片等属性。

添加菜品功能

订单列表管理:显示已有餐桌订单情况,如果未结账的,用户点击结账付款后可以进行结账。

订单详情:可以查看用户都点了哪些菜,每个菜单价多少,数量多少

6.前台用户点餐功能

用户点餐时进入菜单页,选择没有预定的餐桌,这里只显示未预定餐桌

选择餐桌后会进入餐桌首页,可以查看到所有菜品信息

用户可以根据菜系列表和关键字搜索对应的菜品

点击菜品进入菜详情页面,用户可以将菜加入餐车中

放入购物车后会进入清单列表,在这里我们可以返回继续点餐,也可以修改已加入菜品数量,或者移除菜品

点击下单后后端会受到这个消息,开始做菜;如果用户结束吃饭可以点击结账按钮,通知服务员进行结账

总结

到此这篇关于Java实现餐厅点餐系统的文章就介绍到这了,更多相关java 餐厅点餐系统内容请搜索云海天教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持云海天教程!

原文链接:https://blog.csdn.net/qq_34417749/article/details/88949535

java餐厅点餐代码_Java实现餐厅点餐系统的实例代码相关推荐

  1. md5 java代码_JAVA简单实现MD5注册登录加密实例代码

    开发环境:jdk1.7,eclipse 框架:springmvc,mybatis 工具:maven 以下代码复制即可实现MD5加密 创建一个mave项目,加web.不懂得可以搜索一下就有了. 注册用户 ...

  2. 教你用html+js制作一个自己的点名系统,实例代码分享

    简介 教你用html+js制作一个自己的点名系统,实例代码如下. 效果 代码 HTML <div class="wrapper"><h1 align=" ...

  3. java同步方法的特点_java多线程有哪些优点?同步实例代码展示

    在我们的日常学习当中会发现java的知识点是总是息息相关的,可以串联起来.java中多线程的有关内容可以衍生出更多知识,它的优缺点也是非常明显的.你都了解吗?一起来看看吧. 首先为大家介绍一下,多线程 ...

  4. java数字格式化为货币字符串_Java把数字格式化为货币字符串实例代码

    数字可以标志货币.百分比.积分和电话号码等,就货币而言,在不同的国家会以不同的格式来定义,本实例将接收用户输入的数字,然后在控制台中输出其货币格式,其中使用了不同国家的货币格式. 思路如下:使用Num ...

  5. java代码实现文件扫描_JAVA文件扫描(递归)的实例代码

    具体代码如下所示: import java.io.File; public class Scan { public static void main(String[] args) { String f ...

  6. java安卓百度地图查找便利店_Android 百度地图POI搜索功能实例代码

    在没介绍正文之前先给大家说下poi是什么意思. 由于工作的关系,经常在文件中会看到POI这三个字母的缩写,但是一直对POI的概念和含义没有很详细的去研究其背后代表的意思.今天下班之前,又看到了POI这 ...

  7. java 线程重入,java synchronized加载加锁-线程可重入详解及实例代码

    java synchronized加载加锁-线程可重入 实例代码: public class ReGetLock implements Runnable { @Override public void ...

  8. Java模拟拨打电话程序_java_编写android拨打电话apk应用实例代码,android 实现拨打电话的app,代 - phpStudy...

    编写android拨打电话apk应用实例代码 android 实现拨打电话的app,代码非常简单,功能也很实用,分享给大家. MainActivity.java package com.bblei.c ...

  9. java doc转为pdf_Java利用openoffice将doc、docx转为pdf实例代码

    本文研究的主要是Java编程利用openoffice将doc.docx转为pdf的实现代码,具体如下. 1. 需要用的软件 OpenOffice , JodConverter 2.启动OpenOffi ...

  10. java 遍历request_java 遍历request中的所有表单数据的实例代码

    java 遍历request中的所有表单数据的实例代码 实例如下: Enumeration rnames=request.getParameterNames(); for (Enumeration e ...

最新文章

  1. 多层数据源处理复杂数据结构
  2. python爬虫高考成绩
  3. consul 1.2 支持service mesh
  4. 服务程序增加系统托盘
  5. tensorflow中tf.get_variable()函数详解
  6. [Java基础] Java中List.remove报错UnsupportedOperationException
  7. Oracle Golden Gate 系列十四 -- 监控 GG 状态 说明
  8. jQuery Pagination Ajax分页插件中文详解
  9. 在godaddy的空间上发布使用MySql 和 Entity Framework做的网站时遇到的Security Exception...
  10. 腾讯视频上传视频如何同步到企鹅号
  11. try catch finally 中包含return的几种情况,及返回结果
  12. 7-58 肿瘤诊断 (30 分)
  13. python七段数码管绘制学号_python七段数码管绘制
  14. 电商美工必看|Banner设计没灵感?传说中大气的画册风格给你灵感
  15. opencv不能读取MP4格式文件
  16. Chatbot ⾖瓣电影爬⾍简析
  17. 计算机工程 学什么,依然很火的计算机工程专业学什么?
  18. 【Auto.JS】入门宝典—Auto.JS开发使用笔记(随笔和使用心得)
  19. 只要一行代码,批量将Word转换为PDF!
  20. MATLAB图像如何显示希腊字母、上下标(alpha、beta等)

热门文章

  1. android 渠道号怎么写,android无渠道号推广的细分统计
  2. 流水线生产,精益生产,TPS和TOC的缓冲管理
  3. oracle中求众数的sql,SQL中求字段的众数和中位数
  4. 西安航天民芯电子 推出原厂原装MT36291 SOT23-6 PIN对PIN兼替FP6291LR-G1 MT3608
  5. 会计学(非专业)第7章 固定资产
  6. 关于一汽大众的车型底盘号
  7. 一张图看懂微信小程序全生态!
  8. CNCC2018中国计算机大会:自然语言生成,让机器掌握文字创作的本领
  9. ESP32_Arduino_TFT_eSPI的使用记录
  10. PayPal,Stripe,Square轮询支付系统