校园美食宝箱(已上线)

一.项目介绍

本项目为基于SpringBoot框架开发的校园点餐系统。项目分为商户端和用户端,商户端实现了对员工、菜品、套餐的管理以及订单的处理与分析;用户端基于微信小程序实现了在线点餐、下单等功能。

图1 管理端(左)与用户端(右)界面

二.项目地址

1.商户端:https://foodchest.xuejian.online

2.用户端:微信扫一扫下方二维码进行体验(由于个人开发者无权发布电商项目的小程序,因此无法直接搜索使用,仅能使用体验版)

图2 小程序二维码

三. 涉及技术

SpringBoot、MyBatis、MySQL、Redis、JWT、WebSocket、HttpClient、Docker、Nginx

四. 主要功能

1.基于JWT令牌实现用户登录及身份验证,通过ThreadLocal和拦截器进行token校验完成用户认证,解决HTTP请求无状态的问题。

2.使用Redis对菜品进行缓存,缓解高并发下频繁访问数据库导致性能下降的问题。

3.通过WebSocket进行商户端与服务端的长连接,实现来单提醒以及客户催单功能。

4.使用HttpClient实现微信用户登录、微信支付、百度地图等接口的调用。

5.使用SpringTask实现订单状态的定时处理、订单超时取消等功能。

6.使用Nginx部署商户端应用及SSL证书,并配置反向代理转发请求,实现前后端分离架构。

7.使用docker容器化部署服务端应用及MySQL、Redis。

图3 项目结构

五. 项目展示

1.商户端界面展示

图4 商户端-工作台

图5 商户端-数据统计

图6 商户端-订单管理

图7 商户端-菜品管理

图8 商户端-新建套餐

图9 商户端-员工管理

2.用户端界面展示

图10 用户端界面   (a)点餐界面  (b)购物车  (c)下单界面  (d)地址管理  (e)订单详情  (f)历史订单