学生成绩管理系统
基于 Spring Boot + Vue 2 的学生成绩管理系统毕业设计,支持学业、德育、体育与智育多维度成绩录入、Excel 导入导出与 ECharts 可视化统计,含管理员、教师、学生三角色权限。
获取完整源码
演示视频仅作效果参考。完整源码、项目说明与运行答疑,请私聊沟通(适合毕业设计 / 课程设计 / 课设参考)。
项目概览
本套学生成绩管理系统毕业设计源码采用 Spring Boot 2.2 + MyBatis Plus + Shiro 构建后端,Vue 2 + Element UI 实现管理端,覆盖学生/教师/班级管理与综合成绩评定全流程,适合 Java Web 教务类课题。
项目说明
学生成绩管理系统
项目简介
学生成绩管理系统是一个基于 Spring Boot + Vue 2 的综合性教务管理平台,用于管理学生信息、教师信息、班级信息以及学生的综合成绩评定。系统支持多维度成绩管理,包括学业成绩、德育成绩、体育素质和智育素质等。
技术栈
后端技术
- 开发语言: Java 1.8
- 框架: Spring Boot 2.2.2
- ORM框架: MyBatis Plus 2.3
- 数据库: MySQL 5.7
- 安全框架: Apache Shiro 1.3.2
- 工具库: Hutool 4.0.12、FastJson 1.2.8
- 文档工具: Apache POI 3.11(Excel导入导出)
- 构建工具: Maven 3.3.9
前端技术
- 框架: Vue 2.6.10
- UI组件库: Element UI 2.13.0
- HTTP客户端: Axios 0.19.2
- 图表库: ECharts 4.6.0
- 富文本编辑器: Vue Quill Editor 3.0.6
- 地图组件: Vue AMap 0.5.10
- 构建工具: Vue CLI 4.1.0
功能模块
1. 用户角色
- 管理员: 系统管理员,拥有所有权限
- 教师: 可以录入和管理学生成绩
- 学生: 可以查看自己的成绩信息
2. 核心功能
学生管理
- 学生信息的增删改查
- 学生基本信息:学号、姓名、性别、班级、手机号码、邮箱
- 学生头像上传
- 学生账号密码管理
教师管理
- 教师信息的增删改查
- 教师基本信息:工号、姓名、性别、职务、手机号码、邮箱
- 教师头像上传
- 教师账号密码管理
班级管理
- 班级信息的增删改查
- 班级列表展示
综合成绩管理
- 成绩录入:学业成绩、德育成绩、体育素质、智育素质
- 自动计算总分
- 按学年管理成绩
- 成绩查询和统计
- 成绩数据导出(Excel)
- 成绩可视化展示(图表)
3. 系统功能
- 用户登录认证(基于 Shiro)
- 权限管理
- 文件上传(头像、附件)
- 数据统计与可视化
- Excel 数据导入导出
项目结构
java-student-mark/
├── java/ # 后端项目
│ ├── src/
│ │ └── main/
│ │ ├── java/com/
│ │ │ ├── controller/ # 控制器层
│ │ │ ├── service/ # 服务层
│ │ │ ├── dao/ # 数据访问层
│ │ │ ├── entity/ # 实体类
│ │ │ ├── config/ # 配置类
│ │ │ └── utils/ # 工具类
│ │ └── resources/
│ │ ├── mapper/ # MyBatis XML映射文件
│ │ ├── static/ # 静态资源
│ │ └── application.yml # 配置文件
│ ├── db/
│ │ └── studentMark.sql # 数据库脚本
│ └── pom.xml # Maven配置
│
├── admin/ # 前端项目
│ ├── src/
│ │ ├── api/ # API接口
│ │ ├── components/ # 组件
│ │ ├── views/ # 页面视图
│ │ ├── router/ # 路由配置
│ │ └── App.vue # 根组件
│ ├── public/ # 公共资源
│ └── package.json # 依赖配置
│
└── README.md # 项目说明
环境要求
- JDK: 1.8
- Maven: 3.3.9
- Node.js: 14.21.3
- MySQL: 5.7(必须是5.7版本)
- 开发工具: IntelliJ IDEA / Eclipse / MyEclipse
- 数据库工具: Navicat 11
安装部署
1. 数据库配置
- 创建数据库:
CREATE DATABASE studentMark DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
- 导入数据库脚本:
# 使用 Navicat 或命令行导入
mysql -u root -p studentMark < java/db/studentMark.sql
- 修改数据库配置:
编辑
java/src/main/resources/application.yml
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/studentMark?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8
username: root
password: root # 修改为你的数据库密码
2. 后端启动
# 进入后端目录
cd java
# 使用 Maven 编译打包
mvn clean package
# 运行项目
java -jar target/springbooto8mkp-0.0.1-SNAPSHOT.jar
# 或者在 IDE 中直接运行主类
后端服务将在 http://localhost:8080/springbooto8mkp 启动
3. 前端启动
# 进入前端目录
cd admin
# 安装依赖(首次运行)
npm install
# 启动开发服务器
npm run dev
前端服务将在 http://localhost:8081 启动
4. 访问系统
浏览器打开:http://localhost:8081
默认账号
管理员账号
- 账号:
admin - 密码:
123456
学生账号
- 账号:
zhangsan - 密码:
123456
教师账号
- 账号:
jiaoshi - 密码:
123456
主要接口
学生接口
GET /xuesheng/list- 获取学生列表POST /xuesheng/save- 添加学生POST /xuesheng/update- 更新学生信息POST /xuesheng/delete- 删除学生
教师接口
GET /jiaoshi/list- 获取教师列表POST /jiaoshi/save- 添加教师POST /jiaoshi/update- 更新教师信息POST /jiaoshi/delete- 删除教师
班级接口
GET /banji/list- 获取班级列表POST /banji/save- 添加班级POST /banji/update- 更新班级信息POST /banji/delete- 删除班级
成绩接口
GET /zonghechengji/list- 获取成绩列表POST /zonghechengji/save- 录入成绩POST /zonghechengji/update- 更新成绩POST /zonghechengji/delete- 删除成绩
数据库表结构
banji(班级表)
id- 主键banji- 班级名称addtime- 创建时间
xuesheng(学生表)
id- 主键xuehao- 学号(唯一)mima- 密码touxiang- 头像xueshengxingming- 学生姓名xingbie- 性别shoujihaoma- 手机号码youxiang- 邮箱banji- 班级addtime- 创建时间
jiaoshi(教师表)
id- 主键jiaoshigonghao- 教师工号(唯一)mima- 密码touxiang- 头像jiaoshixingming- 教师姓名xingbie- 性别shoujihaoma- 手机号码youxiang- 邮箱zhiwu- 职务addtime- 创建时间
zonghechengji(综合成绩表)
id- 主键xuehao- 学号xueshengxingming- 学生姓名banji- 班级xueyechengji- 学业成绩deyuchengji- 德育成绩tiyusuzhi- 体育素质zhiyusuzhi- 智育素质zongfen- 总分xuenian- 学年dengjishijian- 登记时间jiaoshigonghao- 教师工号jiaoshixingming- 教师姓名addtime- 创建时间
特色功能
- 多维度成绩评定: 支持学业、德育、体育、智育四个维度的成绩管理
- 自动计算总分: 系统自动计算综合成绩总分
- 数据可视化: 使用 ECharts 展示成绩统计图表
- Excel导入导出: 支持批量导入导出学生和成绩数据
- 权限管理: 基于 Shiro 的细粒度权限控制
- 文件上传: 支持头像和附件上传管理
注意事项
- 数据库必须使用 MySQL 5.7 版本
- JDK 必须使用 1.8 版本
- Node.js 建议使用 14.21.3 版本
- 首次运行需要先导入数据库脚本
- 确保后端服务启动后再启动前端
- 文件上传路径为
java/upload/,需要确保该目录有写权限
常见问题
1. 数据库连接失败
- 检查 MySQL 服务是否启动
- 确认数据库账号密码是否正确
- 检查数据库名称是否为
studentMark
2. 前端无法访问后端接口
- 确认后端服务是否正常启动
- 检查后端端口是否为 8080
- 查看前端 API 配置是否正确
3. 文件上传失败
- 检查
upload目录是否存在 - 确认目录是否有写权限
- 查看配置文件中的文件大小限制
开发建议
- 使用 IntelliJ IDEA 开发后端项目
- 使用 VSCode 开发前端项目
- 建议使用 Postman 测试 API 接口
- 开发时建议使用 Chrome 浏览器的开发者工具
项目演示
项目包含演示视频:演示视频.mp4
联系方式
如有问题,请查看项目文档或联系开发团队。
版本: 1.0.0
最后更新: 2025-06-30
获取完整源码
技术分类
包含内容
适合方向
适合 Java 方向本科毕业设计、课程设计,以及需要教务成绩管理、多角色权限与数据可视化展示的计算机专业同学参考。
关于 AI源码
AI源码 整理计算机毕业设计、课程设计向的可运行项目参考,含说明文档与演示材料。完整源码请通过联系方式沟通获取。
相关推荐
查看全部 →
学生考勤管理系统
Spring Boot+Vue2 学生考勤管理系统,实现请假申请审批、考勤记录管理与 ECharts 统计可视化,采用 Shiro+JWT 权限认证,支持 Excel 批量导入导出,适合 Java 高校管理类毕业设计。

学生信息管理系统
轻量级 Spring Boot + Vue 学生信息管理系统毕业设计,提供学生档案增删改查、Shiro 权限控制、Swagger 接口文档与定时任务,前后端分离架构清晰易二次开发。

高校查分系统
高校查分系统毕业设计,Vue 3 + Vite + Element Plus + Express + MySQL,管理员/教师/学生三角色,支持成绩录入发布、Excel 导入导出与 ECharts 可视化。

大学生就业信息管理系统
Vue3 + Express + MySQL 大学生就业信息管理系统,学生端求职投递、企业端招聘发布、管理员端数据统计三端分离,覆盖简历、面试、合同签署全流程。

高校选课系统
Vue3 + Express + MySQL 高校选课管理系统,支持超级管理员、普通管理员、教师、学生四角色,涵盖院系、专业、班级、课程与选课全流程及动态菜单权限。

实验室设备借用系统
Vue3 + Express + MySQL 实验室设备借用管理平台,支持设备分类树、借用申请审批、实验室管理、个人借用记录与 ECharts 数据统计。