-
以下是自学「苍穹外卖」项目的具体学习路线和文件观看顺序安排,帮助你逐步掌握项目的核心模块和技术细节:
一、项目准备阶段
1. 了解项目背景和功能
-
目标:明确项目需求和功能模块。
-
文件/目录:
-
README.md
(项目说明文档) -
需求文档(如果有)或接口文档(如
api-docs
目录)。
-
-
学习重点:
-
项目的核心功能(如用户端、商家端、管理端)。
-
技术栈(Spring Boot、MyBatis、Redis、MySQL 等)。
-
2. 搭建开发环境
-
目标:配置本地开发环境。
-
文件/目录:
-
pom.xml
(Maven 依赖管理)。 -
application.yml
或application.properties
(配置文件)。
-
-
学习重点:
-
项目依赖的第三方库(如 Spring Security、Swagger、Lombok)。
-
数据库连接配置、Redis 配置。
-
二、数据库设计
1. 数据库表结构
-
目标:理解数据模型。
-
文件/目录:
-
sql/
目录中的建表脚本(如schema.sql
)。
-
-
学习重点:
-
核心表的设计(如用户表、商品表、订单表)。
-
外键关系和索引设计。
-
2. 数据关系图
-
目标:通过 ER 图理解表间关系。
-
文件/目录:
-
数据库设计文档(如果有)或通过工具生成 ER 图(如 MySQL Workbench)。
-
三、基础模块学习
1. 员工管理模块
-
目标:掌握登录、权限控制、员工增删改查。
-
文件/目录:
-
controller/EmployeeController.java
-
service/EmployeeService.java
-
mapper/EmployeeMapper.xml
-
-
学习重点:
-
JWT 或 Spring Security 实现登录验证。
-
分页查询(PageHelper 的使用)。
-
密码加密(MD5 或 BCrypt)。
-
2. 分类管理模块
-
目标:理解树形结构的分类设计。
-
文件/目录:
-
controller/CategoryController.java
-
service/CategoryService.java
-
entity/Category.java
(实体类)。
-
-
学习重点:
-
递归查询分类层级。
-
分类的启用/禁用逻辑。
-
四、核心业务模块
1. 菜品和套餐管理
-
目标:掌握商品管理的核心逻辑。
-
文件/目录:
-
controller/DishController.java
(菜品) -
controller/SetmealController.java
(套餐) -
service/DishService.java
-
entity/Dish.java
和Setmeal.java
-
-
学习重点:
-
图片上传(OSS 或本地存储)。
-
套餐与菜品的关联逻辑。
-
缓存设计(如使用 Redis 缓存热门菜品)。
-
2. 订单模块
-
目标:理解订单状态机和支付流程。
-
文件/目录:
-
controller/OrderController.java
-
service/OrderServiceImpl.java
-
entity/Order.java
和OrderDetail.java
-
-
学习重点:
-
订单状态流转(待支付、已支付、已取消等)。
-
微信支付或支付宝支付集成。
-
超时订单自动取消(定时任务或延迟队列)。
-
五、高级功能模块
1. 数据统计与可视化
-
目标:掌握数据报表生成。
-
文件/目录:
-
controller/ReportController.java
-
service/ReportService.java
-
-
学习重点:
-
SQL 复杂查询(如按时间统计订单量)。
-
Excel 导出(Apache POI 或 EasyExcel)。
-
2. 权限管理
-
目标:理解 RBAC 模型。
-
文件/目录:
-
config/SecurityConfig.java
(Spring Security 配置) -
filter/JwtAuthenticationFilter.java
(JWT 过滤器)
-
-
学习重点:
-
角色和权限的拦截逻辑。
-
动态权限控制(如
@PreAuthorize
注解)。
-
六、项目部署与优化
1. 部署配置
-
目标:掌握项目上线流程。
-
文件/目录:
-
Dockerfile
或docker-compose.yml
(容器化部署)。 -
Nginx 配置文件(如反向代理配置)。
-
-
学习重点:
-
多环境配置(开发、测试、生产)。
-
日志切割(Logback 或 Log4j2)。
-
2. 性能优化
-
目标:学习常见优化手段。
-
文件/目录:
-
Redis 缓存配置(如
RedisConfig.java
)。 -
数据库连接池配置(如
HikariCP
)。
-
-
学习重点:
-
缓存击穿、雪崩解决方案。
-
SQL 慢查询优化。
-
七、补充学习建议
-
技术栈学习:
-
必学:Spring Boot、MyBatis、Redis、MySQL。
-
选学:RabbitMQ(消息队列)、Elasticsearch(搜索优化)。
-
-
调试技巧:
-
使用 Postman 测试接口。
-
通过 IDE 的 Debug 模式跟踪代码流程。
-
-
参考资源:
-
官方文档:Spring Boot、MyBatis-Plus、Redis。
-
视频教程:B 站或慕课网的 Spring Boot 实战课程。
-
八、学习路线总结
阶段 核心内容 目标 项目准备 技术栈、配置文件 搭建开发环境,理解项目结构 数据库设计 表结构、ER 图 掌握数据模型设计 基础模块 员工管理、分类管理 实现增删改查和权限控制 核心业务 菜品、套餐、订单 理解复杂业务逻辑和支付集成 高级功能 数据统计、权限管理 掌握报表生成和动态权限控制 部署与优化 容器化、性能调优 学会项目上线和优化手段 通过逐步深入各个模块,结合动手实践(如修改代码、调试接口),你可以全面掌握「苍穹外卖」项目的开发逻辑!
-
苍穹外卖学习路线
于 2025-03-18 21:16:59 首次发布