本项目是一个综合课设管理系统,使用前后端分离开发。主要采用 Vue.js 和 SpringBoot 技术栈开发。
- Vue.js
- SpringBoot
- Mybatis Plus
- Swagger2
- Shrio
- Redis
- Mysql 8.0.19
- JDK版本为 1.8
- 数据库版本为 8.0.19
- 目前数据库部署在本地端,需要创建一个 CCMS 的数据库,然后执行文件里面的 db.sql 语句,根据自己的数据库修改 yml 文件.
- 数据库这边使用了Mybatis Generator 自动代码生成,后续可以考虑一下Mybatis Plus.(已更改)
- 可以使用 Navicat 进行库表管理
- 使用 spring-boot-starter-swagger 生成 API 文档 (url: http://localhost:8080/swagger-ui.html)
- 详细的需求分析
- 数据库表设计
- 模块设计---每个模块的功能点
- 分析表的个数?
- 分析表之间的关联关系?
- 分析表中的字段
- 编码
- 项目环境的搭建
- 功能点模块编码
- 完成基本 SpringBoot Mybatis 项目环境搭建 2020-10-07 林俊
- 技术栈更新 2020-10-08 林俊
- 将 Mybatis 更改为 Mybatis Plus 代码自动生成更加方便,后续待完善分页处理和多表处理
- 使用开源项目 spring-boot-starter-swagger 生成了正式的API文档,持续更新中
- 引入了 Lombok 插件,大量简化代码编写
- 导入 shiro-redis-spring-boot-starter 开源项目Jar包
- 加入 Shiro 安全框架,方便后续处理身份认证、授权、加密以及会话管理
- 加入 Redis 缓存数据
- 加入 JSON Web Token 用于认证过程
- 功能点实现1.0 2020-10-08 林俊
- 编写 AccountController 类,完成用户登录和退出模块
- 编写 UserController 类,实现图片验证码获取
- 编写 Result 类,用于异步统一返回的结果封装
- 编写 GlobalExceptionHandler 类,用于项目异常处理
- 将数据传输中的 password 字段用 md5 加密(Ps:目前遇到点问题未解决)
- 功能点实现2.0 2020-10-19 林俊
- 根据数据库设计,新增了六个是实体类
- 解决了 password 加密传输问题
- 编写 CorsConfig
- 功能点实现3.0 2020-10-23 林俊、林燕玲
- 完成了数据库的 mapper、Service、Impl 的自动生成
- 明确了根据实际需求,开发面向两个角色的功能,学生和教师的使用场景不同(类似于美团的用户版和店家版)
- 实现了功能迁移,编写完成 Teacher、Student 的登录和退出模块
- 功能点实现4.0 2020-10-26 林燕玲
- 数据库增加message表,并增加三个实体类
- 教师端基本功能完成,包括: 1.查看指导的所有课题列表 2.查看指定课题详情 3.查看所有指导的小组列表 4.查看选择某一课题的小组列表 5.查看指定小组详情 6.课题进度控制,给学生发送提醒催进度 7.给指定小组评分(包括修改) 8.查看指导的所有小组的成绩 9.查看单个小组成绩
- 解决mybatis-plus数据库字段与java实体的命名规范冲突问题
- 完成教师端现有功能的单元测试
- 功能点实现5.0 2020-10-26 林俊
- 修改 TopicSelect 表, 存储上传的文件信息
- 学生端基本功能完成,包括: 1.个人信息管理 2.组队管理 3.选择课题项目 4.查看课题信息 5.查看所有课题信息 6.成绩查询 7.成绩有误反馈 8.上传实验报告 9.提交实验报告
一些功能点的输入输出逻辑没有明细;关于文件上传处理,还未测试,存在一些问题待解决
- 功能点实现6.0 2020-12-04 林燕玲
- 数据库表修改
- postman测试教师端所有API完成
- 功能点实现7.0 2020-12-14 林俊
- 完成实验报告编写,并测试成功
- 等待前后端联调