# 基于SpringBoot的学生信息管理系统
## 技术栈
SpringBoot
Spring Data JPA (不用)(Mybatis Plus)
BootStrap4 (不用)(自定义css,js)
Thymeleaf
Mysql
依赖管理工具: Maven(原定为Gradle)
最终技术栈: SpringBoot + MybatisPlus + Thymeleaf + Mysql + js + html + css
esayExcel
## 项目架构
打包方式: jar包(SpringBoot支持jar包运行方式,而不用打成war包)
架构: B/S
jdk: 11.0.3(LTS)
IDE: IDEA 2019.2
SpringBoot: 2.2.0 RELEASE
Mysql: 8.0.18
## 概要设计
### 思维导图
![eduM](https://github.com/yeahQing/ASAM-Manager/blob/master/images/eduM.png)
### 数据字典
## 项目功能
### 角色
管理员、学生、教师
### 实体类
管理员、学生、教师、院校、课程
### 功能
管理员:
———— 学生信息管理
——基本信息管理(学号、姓名、年龄、性别、籍贯、政治面貌、在校担任职位、手机号、所在院校、入学时间、毕业时间等)
——选课管理(学号、课程号、成绩))
———— 教师信息管理
——基本信息管理(教职工编号、姓名、年龄、职称、所在院校)
——课程管理(教职工编号、课程号)
———— 课程信息管理
——学时、学分设置
——开课时间
———— 院校信息管理(院校编号、学校名称、学院名称)
————管理员管理
——权限设置
——修改密码
————按权限登录,显示不同视图
### 数据字典
用户表
用户id 用户名 密码 角色(0,1,2)分别代表
学生表
教职工表
职工号 教师姓名 职称 学历 研究方向 所属学院
管理员表
课程表
学生课程表
## 基本模块
### 1. 登录模块(完成)
涉及表: 用户表、角色表、用户角色关联表
逻辑:
1. 启动StuApplication,程序访问IndexController中的RequestMapping("/"),通过@GetMapping访问index.html页面,进行登录操作。
2. 用户输入用户名及其密码,用户名为用户的id,将表单提交到IndexController下的RequestMapping("/login").
3. 首先进行用户是否存在的验证,如果查询结果为空,那么向request域中写入属性error,返回登陆界面
4. 如果用户存在,那么根据用户id查询对应的角色,根据角色id,跳转到对应的角色路由。
5. 通过url携带的角色id,查询该角色对应的菜单信息,并封装成集合,返回Main页面显示。
6. 通过角色动态生成菜单,因此只需要写一个main页面,即可显示不同角色的信息,减少了工作成本。
### 2. 动态菜单功能(完成)
左侧导航菜单项根据角色显示不同的内容。
目前有三种角色: 管理员、学生、教师
动态菜单可以扩展
目前只有管理员可以进行菜单的管理**(功能正在开发)**
### 3.管理员功能(完成):
> 目前遇到的问题: JPA采用native query的查询方式,会造成性能降低,查询速度极慢,因此决定更换持久化框架为mybatis
#### 一、学生管理
1. **批量导入学生信息功能(完成)**
批量导入学生信息,采用导入Excel文件的形式,项目使用easyExcel作为poi工具,Excel需要为固定格式,首先将读取到的内容封装到学生实体集合中,将每个学生实体写入数据库tbl_stu,之后通过学号和身份证号,封装用户实体,将用户写入数据库tbl_user,之后将用户id与角色id写入到数据库tbl_user_role
2. **批量导入学生信息加载动画效果(完成)**
由于导入excel时间比较长,因此需要给用户一个加载动画的提示
3. **学生列表的显示(完成)**
采用jpa Pagable实现分页查询
4. **学生列表中的编辑和删除功能(完成)**
已经实现了
5. **学生选课信息的显示**
(例如: 学生XXX 在 周一 上午 第一节到第三节 教A301 计算机导论课程 赵志燕授课 学分3 课时48 考试类型 闭卷考试 )
6. **学生选课**: 学生可以查看当前开设的课程列表,可以选择课程(每个学生有选课上限),可以退课
> 管理员可以通过查询学号的方式,查看某一个学生的选课信息
所需技术: 分页、excel表格导入
涉及表: tbl_user、tbl_stu、tbl_user_role
#### 二、 菜单管理(完成)
#### 三、教师管理(完成)
1. **批量导入教师信息功能**
2. **教师列表的显示**
3. **批准教师开设课程**
4. **教师列表中的编辑和删除功能**
> 教师可以给学生的课程打分
#### 四、课程管理(完成)
1. **批量导入课程信息功能(该功能目前只能由教师申请)**
2. **课程列表的显示(改为课程搜索)**
搜索某一个课程,按照课程名称或者教师名称,模糊查询
3. **课程的编辑和删除功能(暂时不做,审核不通过,让教师重新申请)**
4. **搜索课程**
5. **审核课程**
#### 权限设置(完成)
### 4.学生功能
#### 一、学生基本信息展示(完成)
#### 二、学生基本信息修改(完成)
#### 三、学生选课(完成)
#### 四、学生修改密码(完成)
#### 五、学生首页信息展示(完成)
### 5.教师功能
#### 一、教师基本信息展示(完成)
#### 二、教师基本信息修改(完成)
#### 三、教师开设课程(完成)
#### 四、教师课程审计(完成)
#### 五、教师修改密码(完成)
#### 六、教师首页信息展示(完成)
### 目前出现的问题
分页信息在无信息的情况下显示0
## 从JPA迁移到MybatisPlus(顺利完成,已经脱离JPA)
### Mapper层接口迁移
#### 1. 用户实体类mapper层测试
### 已经迁移成功的功能
#### 管理员->学生部分:
1. 修改学生信息
2. 删除学生信息
3. 分页查询学生信息并显示
4. Excel导入学生信息
#### 管理员->核心模块:
1. 统一的登录注销接口
2. 首先信息的动态显示
3. 动态菜单的实现
#### 管理员->教师部分:
1. 修改教师信息
2. 删除教师信息
3. 分页查询教师信息并显示
4. Excel导入教师信息
#### 管理员->课程部分:
1. 修改课程信息
2. 删除课程信息
3. 分页查询课程信息并显示
4. Excel导入课程信息
#### 管理员->设置:
1. 修改密码(修改完成后需要重新登录)
### 未完成的功能
学生用户功能(已完成菜单设计)
1. 首页 0 (选修课程数、及格课程数、未及格课程数)
2. 基本信息 0 (基本信息的显示和部分修改)
-> 学生信息
3. 选修课程 0 (选修课程/取消选择)
-> 已选课程
-> 待选课程
4. 设置 0
-> 修改密码
5. 退出登录 0
教师用户功能(已完成菜单设计)
1. 首页 0 (开设课程数、已打分课程、尚未打分课程)
2. 基本信息 0 (基本信息的显示和部分修改)
-> 教师信息
3. 课程管理 0
-> 开设课程
-> 课程审计
4. 设置 0
-> 修改密码
5. 退出登录 0
学生选课功能
教师申请开设课程功能
教师录入课程分数功能
管理员搜索学生选课信息功能
管理员搜索教师开课信息功能
管理员批准教师开课功能
### 学生选课功能设计
学生课程VO
学生课程表
id 自增
lessonId 课程id
stuId 学生id
score 分数
state 选课状态 (默认可以选择: 0 ,选课后: 1, 不能选课: 2)
### 教师申请开课功能设计
教师课程VO
id 教师课程表自增id
teacherId 教师id
lessonId 课程id(自动生成 L+时间2019年11月03日22点17分33秒) 例如 L20191103221733
date 申请时间
state 申请状态(管理员修改状态 0: 待审核, 1: 审核通过,2: 审核未通过)
首先教师创建课程,课程创建成功后,课程的信息记录到课程表中,课程id写入到教师课程表中,
### 管理员审核课程功能设计
只有管理员审核通过(教师课程表中课程状态为1课程才�
没有合适的资源?快使用搜索试试~ 我知道了~
java毕业设计 基于SpringBoot+Mybatis的教务系统的设计与实现+详细文档+全部资料(优秀项目).zip
![preview](https://csdnimg.cn/release/downloadcmsfe/public/img/white-bg.ca8570fa.png)
共110个文件
java:46个
html:24个
css:10个
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 173 浏览量
2024-04-17
10:46:40
上传
评论
收藏 2.02MB ZIP 举报
温馨提示
【资源说明】 java毕业设计 基于SpringBoot+Mybatis的教务系统的设计与实现+详细文档+全部资料(优秀项目).zipjava毕业设计 基于SpringBoot+Mybatis的教务系统的设计与实现+详细文档+全部资料(优秀项目).zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如软件工程、计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载使用,也可作为毕设项目、课程设计、作业、项目初期立项演示等,当然也适合小白学习进阶。 3、如果基础还行,可以在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!
资源推荐
资源详情
资源评论
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
收起资源包目录
![package](https://csdnimg.cn/release/downloadcmsfe/public/img/package.f3fc750b.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/JAR.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/PNG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/SVG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/SVG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/SVG.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
共 110 条
- 1
- 2
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/default.jpg!1)
不走小道
- 粉丝: 3253
- 资源: 5112
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)