markdown复制## 1. 项目概述与核心价值
最近在整理教学管理资料时,发现很多学校还在用Excel手动统计学生成绩。这种传统方式不仅容易出错,而且无法实现多维度分析。于是我用Java+Vue开发了一套轻量级成绩管理系统,经过三个学期的实际运行验证,系统稳定性与易用性都得到了师生好评。
这套系统最核心的价值在于:
1. 教师端支持批量导入/导出成绩单,自动计算班级平均分、排名等统计指标
2. 学生端提供个人成绩趋势分析图表,支持按学期/科目筛选
3. 管理员可灵活配置课程体系,设置不同权重计算规则
4. 采用前后端分离架构,后续扩展在线考试功能也很方便
## 2. 技术架构设计
### 2.1 后端技术栈选型
选择SpringBoot作为后端框架主要考虑:
- 内嵌Tomcat简化部署,适合学校机房环境
- 与MyBatis-Plus配合实现快速CRUD开发
- 集成Swagger自动生成API文档,降低前后端联调成本
数据库选用MySQL 8.0,关键设计包括:
```sql
CREATE TABLE `course` (
`id` int NOT NULL AUTO_INCREMENT,
`course_name` varchar(50) NOT NULL COMMENT '课程名称',
`credit` decimal(3,1) DEFAULT '2.0' COMMENT '学分',
`teacher_id` int DEFAULT NULL COMMENT '任课教师',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
2.2 前端技术方案
Vue 2.x + ElementUI的组合优势明显:
- 响应式布局适配机房老旧显示器
- Axios拦截器统一处理401超时跳转
- ECharts实现成绩分布可视化
- 采用Vuex管理用户权限状态
典型页面组件结构:
code复制src/
├── api/ # 接口封装
├── components/ # 公共组件
│ ├── ScoreChart.vue # 成绩雷达图
│ └── UploadExcel.vue # Excel导入组件
├─
