1.项目概述

1.1.项目演示

  1. 运行 “饿了么项目” ,演示应用程序效果,演示 “点餐业务线” 整体流程。
  2. 本项目参照 “饿了么官网网页版”制作,演示饿了么官网效果。饿了么网页版:http://h5.ele.me/
  3. 本项目专注于完成点餐业务线功能, ”饿了么官网“中的其它功能暂不涉及 。

    1.2.项目目标

  4. 本项目为课程级贯穿项目中的第三个项目(JDBC项目、前端项目、javaWeb项目)。

  5. 本项目完成后,学员将能够使用VUE+Servlet+AJAX技术开发前后端分离的Web应用程序。

    1.3.项目中所涉及到相关知识点

  • AJAX的使用
  • Servlet的使用
  • Session的使用
  • 简单MVC封装
  • Service层事务管理
  • dao层批量操作
  • 多对一与一对多的映射
  • 服务器端json数据转换
  • VueCli的使用
  • Vuex的使用
  • 多条件模糊查询的使用
  • 文件上传
  • Svn、Git版本控制工具的使用

    1.4.数据库设计

    1.5.1.DB一览表

    | No | 表名称 | 中文名 | 说明 | | —- | —- | —- | —- | | 1 | business | 商家表 | 存储所有商家信息 | | 2 | food | 食品表 | 存储每个商家所拥有的所有食品信息 | | 3 | cart | 购物车表 | 存储每个用户的购物车中的食品信息 | | 4 | deliveryaddress | 送货地址表 | 存储每个用户的所有送货地址信息 | | 5 | orders | 订单表 | 存储每个用户的所有订单信息 | | 6 | orderdetailet | 订单明细表 | 存储每个订单中所订购的所有食品信息 | | 7 | user | 用户表 | 存储所有用户信息 |

1.5.2.表结构

约束类型标识:
PK:primary key 主键
FK:foreign key 外键
NN:not null 非空
UQ:unique 唯一索引
AI:auto increment 自增长列

1.5.2.1.business(商家表)

No 字段名 数据类型 size 默认値 约束 说明
1 businessId int PK、AI、NN 商家编号
2 businessName varchar 40 NN 商家名称
3 businessAddress varchar 50 商家地址
4 businessExplain varchar 40 商家介绍
5 businessImg mediumtext NN 商家图片
6 orderTypeId int NN 点餐分类
7 starPrice decimal (5,2) 0.00 起送费
8 deliveryPrice decimal (5,2) 0.00 配送费
9 remarks varchar 40 备注

1.5.2.2.food(食品表)

No 字段名 数据类型 size 默认値 约束 说明
1 foodId int PK、AI、NN 食品编号
2 foodName varchar 30 NN 食品名称
3 foodExplain varchar 30 NN 食品介绍
4 foodImg mediumtext NN 食品图片
5 foodPrice decimal (5,2) NN 食品价格
6 businessId int FK、NN 所属商家编号
7 remarks varchar 40 备注

1.5.2.3.cart(购物车表)

No 字段名 数据类型 size 默认値 约束 说明
1 cartId int PK、AI、NN 无意义编号
2 foodId int FK、NN 食品编号
3 businessId int FK、NN 所属商家编号
4 userId varchar 20 FK、NN 所属用户编号
5 quantity int NN 同一类型食品的购买数量

1.5.2.4.deliveryaddress(送货地址表)

No 字段名 数据类型 size 默认値 约束 说明
1 daId int PK、AI、NN 送货地址编号
2 contactName varchar 20 NN 食品编号
3 contactSex int NN 联系人性别
4 contactTel varchar 20 NN 联系人电话
5 address varchar 100 NN 送货地址
6 userId varchar 20 FK、NN 所属用户编号

1.5.2.5.orders(订单表)

No 字段名 数据类型 size 默认値 约束 说明
1 orderId int PK、AI、NN 订单编号
2 userId varchar 20 FK、NN 所属用户编号
3 businessId int FK、NN 所属商家编号
4 orderDate varchar 20 NN 订购日期
5 orderTotal decimal (7,2) 0.00 NN 订单总价
6 daId int FK、NN 所属送货地址编号
7 orderState int 0 NN 订单状态(0:未支付; 1:已支付)

1.5.2.6.orderdetailet(订单明细表)

No 字段名 数据类型 size 默认値 约束 说明
1 odId int PK、AI、NN 订单明细编号
2 orderId int FK、NN 所属订单编号
3 foodId int FK、NN 所属食品编号
4 quantity int NN 数量

1.5.2.7.user(用户表)

No 字段名 数据类型 size 默认値 约束 说明
1 userId varchar 20 PK、NN 用户编号
2 password varchar 20 NN 密码
3 userName varchar 20 NN 用户名称
4 userSex int 1 NN 用户性别(1:男; 0:女)
5 userImg mediumtext 用户头像
6 delTag int 1 NN 删除标记(1:正常; 0:删除)

[

](https://null_688_6639.gitee.io/javase/18%E5%89%8D%E5%90%8E%E7%AB%AF%E9%A1%B9%E7%9B%AE/)