目录
1 开发环境与开发工具 4
1.1 开发环境 4
1.2 开发工具 4
2 开发日志 5
3 系统分析 6
3.1 需求分析 6
3.2 功能分析 6
4 系统设计 7
4.1 数据库概念结构设计 7
4.2 数据库逻辑结构设计 8
4.3 数据库的实施 11
5 系统实现 13
5.1 系统实现的技术方案 13
5.2 登陆功能的实现 13
5.3 管理员功能实现 14
5.3.1 添加学生用户 14
5.3.2 添加导师用户 16
5.3.3 从文件导入用户 17
5.3.4 用户查询页面 18
5.3.5 用户信息修改 19
5.3.5 删除用户 19
5.4 导师功能模块 20
5.4.1 修改信息 20
5.4.2 添加课题 22
5.4.3 课题管理 22
5.4.4 申请处理 24
5.4.5 申请处理记录 26
5.4.6 指导学生查询 26
5.5 学生功能 27
5.5.1 导师课题申请 27
5.5.2 学生课题申请 28
5.5.3 申请记录查询 28
5.5.4 可选课题浏览 29
5.5.4 已通过课题浏览 29
5.5.5 可选导师浏览 30
5.5.6 学生的导师信息 30
5.6 总结 32
6 参考文献 33
1 开发环境与开发工具
1.1 开发环境
(1)开发语言:Java 13、Python 3.7、Node.js 12.13.1
(2)开发设备系统:Windows 10
(3)数据库系统软件:MySQL 8.0、Redis 3.2
(4)Java Web 框架:Spring Boot 2.3.0
(5)Java 数据库框架:ORM持久层框架 MyBatis-Plus 3.3.2
(6)Python Web 框架:Flask 1.1.1
(7)Python 数据库框架:基于PyMySQL的Web-MySQL
(8)前端框架:基于webpack的Vue.js脚手架 Vue-CLI
(9)UI库:基于Vue.js的View UI
1.2 开发工具
(1)前端SPA页面开发工具:Visual Studio Code
(2)Java后端开发工具:IntelliJ IDEA Ultimate
(3)Java依赖管理器:Maven 3.6
(4)Python后端开发工具:PyCharm Professional
(5)数据库工具:MySQL Workbench 8.0 CE
(6)项目版本管理工具:Git、GitHub、GitHub Desktop
(7)URL接口测试工具:Postman
毕业设计选题系统是一个用于毕业学生进行毕业设计选题和导师管理课题的系统,作为一个高校使用的系统,有着许多用户的使用,对于不同用户,使用的操作系统可能不同,在平台拥有的权限也不同,因此本系统设计了3种用户,分别是系统管理员、导师、毕业学生。
不同用户的功能如下:
(1)系统管理员:能够添加用户和修改用户信息。
(2)导师:需要能够发布课题,并且可以对课题进行管理,导师需要处理学生对课题的申请,在处理后能够查看申请的处理记录,导师对于已通过的学生,可以查看学生的信息。
(3)学生:需要查询可以选择的课题和可以选择的导师,可以申请课题,考虑到有学生提出自己课题的情况,学生也可以根据导师对自选课题的要求向指定导师申请自己的课题,同时也可以查询自己的申请记录以及申请情况,学生也可以查询自己通过的课题的信息和导师的信息。