基于Spring Boot + Vue 开发的前后端分离的作业自动化收集平台,主要目的是简化当前作业管理的流程,并提供个性化的DDL通知,提供了从作业发布、通知、收取到提醒的解决方案。 新版本对旧版进行了很多重写,对旧版本不规范的地方进行了很多的修改,包括但不限于流程优化、异常处理、级联资源的处理、三方服务的使用、权限控制等。
- 项目在设计的时候为了简单使用,角色只有在班级内才会进行区分,因此没有设计后台管理
- 前后端分离部署,适应当前潮流
- 使用设计模式,支持多种上传模式和第三方登录
- 参考RBAC模型设计了简化的权限管理,并结合AOP实现拦截检查
- 使用云服务简化开发流程,如OSS、函数计算等
- 使用注解、Redis、Lua脚本实现简单多级限流器
- 参考OAuth2设计两段式token实现身份无感刷新
- 缓存业务数据加速查询,通过多种方式保证一致性,并使用分布式读写锁处理业务并发
前端: Vue + Vue-Router + Axios + Element + Echarts
后端: Spring Boot + Nginx + Docker + Swagger3 + MyBatis-Plus + Mysql + Redis +
RabbitMQ +Redisson
其他: 阿里云、第三方Gitee接入认证、BCrypt算法
开发环境 | 版本 |
---|---|
Spring Boot | 3.2.2 |
JDK | 21 |
MySQL | 8.0.25 |
Redis | 6.2.6 |
RabbitMQ | 3.9.27 |
本项目是个人技术学习的一个总结,只供学习使用。做的不好的地方请大家见谅。