1. 资源
https://blog.xiaobias.com/article/60
2. 项目简介
学生评奖评优管理系统,基于Spring Boot + MyBatis-Plus + Vue + Layui技术栈开发。系统面向高校学生、教师及管理员,实现学生信息管理、成绩录入与查看、奖学金申请与审核、获奖证书及好人好事证明的上报与审批、纪律通报发布、信息异议反馈等功能,旨在规范评奖评优流程,提高管理效率。
系统提供前台门户(学生/教师使用)和后台管理端(管理员使用)两套界面。前台支持学生自主申请奖学金、查看成绩、提交获奖证书与好人好事证明、反馈异议信息等;教师可录入学生成绩、审核证书与证明、发布纪律通报;管理员拥有全平台管理权限,包括用户管理、基础数据维护、轮播图配置等。
3. 技术栈
| 层级 | 技术选型 |
|---|---|
| 后端框架 | Spring Boot 2.2.2.RELEASE |
| ORM | MyBatis-Plus 2.3 + MyBatis Spring Boot Starter 2.1.1 |
| 数据库 | MySQL 5.7.32-log (支持SQL Server) |
| 安全与鉴权 | Apache Shiro 1.3.2,结合自定义Token拦截器 |
| 前端后台 | Vue 2.x + Element UI + ECharts + axios |
| 前端门户 | Layui + jQuery + HTML/CSS |
| 工具库 | Hutool、Fastjson、commons-lang3、js-md5、print-js |
4. 详细介绍
4.1 功能模块划分
4.1.1 管理员功能
- 学生管理:增删改查学生信息,支持“成绩录入”快捷入口。
- 教师管理:增删改查教师信息。
- 院系信息管理:维护院系名称列表。
- 班级信息管理:维护班级名称列表。
- 学生成绩管理:管理所有学生的体育、德育、智育成绩及综合素质分。
- 奖学金申请管理:配置各类奖学金(名称、类型、金额、申请要求),供学生前端申请。
- 奖学金获得情况管理:查看学生奖学金申请记录,进行审核(通过/驳回),审核后信息出现在前台“获得情况”列表。
- 信息异议反馈管理:查看学生提交的异议反馈,并可回复处理。
- 纪律通报管理:发布违纪通报,包含违纪项、扣分、照片等。
- 轮播图管理:配置前台首页轮播图片。
4.1.2 学生功能(前台)
- 学生成绩:查看本人的体育、德育、智育成绩及综合素质分(按综合素质分排序展示)。
- 奖学金申请:浏览可申请的奖学金项目,点击“申请奖学金”跳转到申请页面,填写信息后提交,等待教师/管理员审核。
- 奖学金获得情况:查看本人已通过审核的奖学金记录。
- 获奖证书:上传本人获奖证书(含奖项名称、日期、内容等),提交后需要审核。
- 好人好事证明:上传好事证明(好事名称、地点、证明人、日期等),提交后需要审核。
- 信息异议反馈:对成绩或其他信息有异议时,可提交反馈内容,教师/管理员可回复。
- 纪律通报:查看本人相关的违纪通报记录。
- 个人中心:修改个人信息(密码、电话、邮箱、头像等)。
4.1.3 教师功能(后台)
- 学生管理:管理所负责班级的学生信息。
- 学生成绩管理:查看学生成绩。
- 获奖证书管理:审核学生提交的获奖证书(通过/驳回)。
- 好人好事证明管理:审核学生提交的好人好事证明。
- 纪律通报管理:添加、修改、删除违纪通报。
- 个人中心:修改教师个人信息。
4.2 数据库核心表结构
| 表名 | 说明 | 关键字段 |
|---|---|---|
xuesheng | 学生表 | 学号、姓名、院系、班级、密码、电话、邮箱、照片 |
jiaoshi | 教师表 | 工号、姓名、院系、班级、职称、电话、邮箱 |
yuanxixinxi | 院系信息表 | 院系名 |
banjixinxi | 班级信息表 | 班级名 |
xueshengchengji | 学生成绩表 | 学号、姓名、院系、班级、体育/德育/智育成绩、综合素质分 |
jiangxuejinshenqing | 奖学金申请表(项目) | 奖学金名称、类型、金额、申请要求 |
jiangxuejinhuodeqingkuang | 奖学金获得情况表(申请记录) | 奖学金名称、类型、金额、申请时间、学号、姓名、审核状态 |
huojiangzhengshu | 获奖证书表 | 奖项名称、证书封面、获奖日期、获奖内容、审核状态 |
haorenhaoshizhengming | 好人好事证明表 | 好事名称、封面、发生地点、证明日期、证明人、审核状态 |
jilvtongbao | 纪律通报表 | 通报名称、违纪项、通报日期、扣分、违纪内容、照片 |
xinxiyiyifankui | 信息异议反馈表 | 信息名称、封面、反馈时间、异议内容、回复 |
users | 管理员表 | 用户名、密码、角色 |
token | Token表 | 用户id、用户名、表名、角色、token、过期时间 |
config | 系统配置表(轮播图等) | 配置参数名、值 |
4.3 业务流程示例
奖学金申请流程
- 学生在前台“奖学金申请”列表中选择一个项目,点击“申请奖学金” → 填写申请信息 → 提交 → 生成
jiangxuejinhuodeqingkuang记录(sfsh='否')。 - 教师或管理员在后台“奖学金获得情况管理”中查看申请,点击审核(通过/驳回)并填写回复 → 更新
sfsh='是'或'否'。 - 学生可在“奖学金获得情况”中看到审核结果。
- 学生在前台“奖学金申请”列表中选择一个项目,点击“申请奖学金” → 填写申请信息 → 提交 → 生成
成绩异议反馈流程
- 学生对成绩有异议 → 在“信息异议反馈”中创建反馈(填写信息名称、异议内容) → 教师/管理员在后台查看并回复。
- 学生可在反馈详情中看到回复内容。
获奖证书/好人好事证明审核流程
- 学生上传证书或证明 → 教师进入对应管理菜单进行审核 → 审核通过后,信息会显示在前台列表(
sfsh='是')。
- 学生上传证书或证明 → 教师进入对应管理菜单进行审核 → 审核通过后,信息会显示在前台列表(
4.4 项目部署要点
- 数据库:运行
db.sql脚本创建数据库springbootx877q并初始化数据。 - 后端配置:修改
application.yml中的数据库连接(用户名、密码),端口默认8080,context-path为/springbootx877q。 - 前台门户:访问
http://localhost:8080/springbootx877q/front/index.html,默认学生账号100/123456,教师账号1/1,管理员abo/abo。 - 后台管理:访问
http://localhost:8080/springbootx877q/admin/dist/index.html,使用管理员账号登录。 - 文件上传:上传的文件默认保存在
classpath:static/upload/目录下。
5. 部分代码
5.1 学生登录接口(后端)
// XueshengController.java@IgnoreAuth@RequestMapping(value="/login")publicRlogin(Stringusername,Stringpassword,Stringcaptcha,HttpServletRequestrequest){XueshengEntityuser=xueshengService.selectOne(newEntityWrapper<XueshengEntity>().eq("xuehao",username));if(user==null||!user.getMima().equals(password)){returnR.error("账号或密码不正确");}Stringtoken=tokenService.generateToken(user.getId(),username,"xuesheng","学生");returnR.ok().put("token",token);}5.2 奖学金申请前端保存(前端JS)
// jiangxuejinhuodeqingkuang/add.html 中的提交逻辑form.on('submit(*)',function(data){data=data.field;// 数据校验(奖学金金额整数等)http.requestJson('jiangxuejinhuodeqingkuang'+'/add','post',data,function(res){layer.msg('提交成功',{time:2000,icon:6},function(){back();});});returnfalse;});5.3 权限菜单配置(前端)
// menu.js 片段 - 定义各角色的后端菜单按钮权限{"roleName":"学生","tableName":"xuesheng","backMenu":[{"menu":"获奖证书管理","child":[{"buttons":["查看","新增","修改","删除"],"menu":"获奖证书","tableName":"huojiangzhengshu"}]}]}5.4 数据库表实体示例(学生成绩)
// XueshengchengjiEntity.java@TableName("xueshengchengji")publicclassXueshengchengjiEntity<T>implementsSerializable{@TableIdprivateLongid;privateStringxuehao;privateStringxueshengxingming;privateStringyuanxi;privateStringbanji;privateStringzhaopian;privateIntegertiyuchengji;privateIntegerdeyuchengji;privateIntegerzhiyuchengji;privateIntegerzonghesuzhifen;// getters/setters}6. 部分截图
7. 项目总结
本项目实现了一个功能完整的学生评奖评优管理系统,覆盖了学生、教师、管理员三种角色的核心业务场景。系统采用前后端分离架构(后台管理端Vue + 前台门户Layui),后端基于Spring Boot + MyBatis-Plus快速开发,并整合了Shiro + Token双重鉴权机制。
- 优点:功能贴合实际校园评奖评优流程,包含成绩管理、奖学金申请审批、证书证明审核、违纪通报、异议反馈等全链条;权限划分清晰,前后台分离便于维护。
- 技术亮点:使用MyBatis-Plus简化数据访问,集成百度地图API(位置获取)、人脸比对(扩展功能)、Tinymce富文本编辑器、ECharts图表等。
总的来说,该项目可作为高校评奖评优管理系统的参考实现,具备良好的业务基础与可扩展性。