基于SSM的大学生点餐系统jsp外卖订餐管理java源代码Mysql

137 阅读3分钟

QQ图片20230717161120.jpg

本项目为前几天收费帮学妹做的一个项目,Java EE JSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。

一、项目描述

基于SSM的大学生点餐系统

系统有2权限:管理员、用户

开发系统:Windows 7

开发语言:Java

开发编辑器:IntelliJ IDEA 2020.1.3

数据库及GUI工具:MySQL Server 5.5,SQLyog

数据库连接池:Druid连接池

Web容器:Tomcat 9.0.27

前端技术:HTML,CSS,JavaScript,AJAX

前端框架:jQuery,BootStrap,LayUI,LayUImini

数据交换载体:JSON

后端技术:Servlet,JSP,JDBC

后端框架:SpringMVC,Spring,MyBatis

测试框架:Junit4

测试工具:Apache JMeter 5.4

项目管理工具:Maven

代码托管技术及代码托管平台:Git、Gitee码云、GitHub

二、主要功能

(1)用户:登录、注册、我的订单、我的优惠券、我的评价、我的投诉、修改密码、个人资料、地址管理

(2)商户:系统管理、食堂管理、用户前台、配送员面板、用户管理、角色管理、菜单管理

三、技术亮点

(1) 全系统无刷新 :宿递整个系统采用了无刷新的方式,用户在使用的过程中将不会遇到浏览器页面级别的操作,所有的跳转都基于iFrame内联框架进行。全系统全程采用了AJAX异步请求操作,摒弃了同步请求中用户等待而无法进行操作的问题,提升了用户的体验。前后端之间的数据传递采用流行的JSON格式,数据包精简且高效。在后端的SpringMVC接取数据方面,我使用了@RestController注解,该注解能够使控制器无刷新回写数据,配合前后端缩短系统响应的等待时间,让用户体验更佳。

(2) 摒弃JSP,实现前后端技术分离 :传统JSP项目前后端技术代码杂糅问题较为严重,宿递系统的解决方案是使用基于LayUI提供的模板引擎插件,配合Ajax以及JSON,以纯JavaScript的原生方式进行数据的传递及显示。

(3) 用户角色权限控制 :每个角色对应有其能够操作的菜单面板权限范围,一个用户允许有多个角色。当用户登录的时候会根据其对应的角色显示对应的菜单,以此来达到权限控制,将前后台合并压缩系统的规模,提升效能。

(4) 初级SPU、SKU机制 :宿递系统初步使用了SPU、SKU机制,能够更好的对菜品进行管理,以规格的方式快速的区分用户的下单菜品以及点餐中心的展示菜品之间的区别和联系。

四、系统运行

安装Java并配置环境变量的微机

安装Tomcat且版本号7以上,安装MySQL且版本号5.7及以上

将项目部署后运行数据库文件(database/sudi_database_all.sql)

由于项目未部署于云服务器中,仅运行在本地Tomcat服务器,所以需要手动在D盘的目录下新建一个d:/sudi_data/upload文件夹用于存储项目的上传图片,同时需要在Tomcat中配置项目存储路径的虚拟目录(/sudi/upload)

项目启动前请注意检查:基础Tomcat的虚拟路径是否为/sudi,图片服务器的虚拟路径是否为/sudi/upload

运行项目即可

五、项目截图

1.png

2.png

3.png

4.png

5.png

6.png

7.png

8.png

9.png

10.png

11.png

12.png