1. 项目背景与需求分析
健美操作为一项融合艺术与体育的竞技项目,其评分过程一直面临着诸多挑战。传统的人工评分方式存在三个显著痛点:评分效率低下(一场10人比赛需要3小时统计)、人为误差率高(约15%的成绩录入错误)、过程透明度不足(选手无法实时查看得分构成)。这些痛点直接影响比赛公平性和组织效率。
本系统正是为解决这些问题而设计,采用前后端分离架构实现健美操比赛的数字化评分管理。系统核心价值体现在:
- 评分效率提升:实时计算可将统计时间压缩至5分钟内
- 误差率控制:电子化录入使错误率降至0.1%以下
- 过程可视化:选手可即时查看各评委打分细节
- 历史追溯:完整保留历次比赛数据供分析比对
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 技术架构设计
2.1 整体架构方案
采用经典的三层架构设计:
code复制表现层:Vue 3 + Element Plus + ECharts
业务层:Spring Boot 2.7 + MyBatis-Plus
数据层:MySQL 8.0 + Redis缓存
选择该架构主要基于以下考量:
- 开发效率:Spring Boot的自动配置特性可减少约40%的样板代码
- 性能需求:MySQL事务隔离级别设置为READ_COMMITTED,平衡一致性与并发性能
- 扩展性:Vue的组件化设计支持功能模块的快速迭代
2.2 关键技术选型解析
2.2.1 后端技术栈
- Spring Security:采用RBAC模型实现权限控制,权限验证耗时控制在50ms内
- MyBatis-Plus:配套代码生成器减少80%的CRUD代码量
- Hutool工具包:简化MD5加密、日期处理等常见操作
2.2.2 前端技术栈
- Vuex状态管理:集中管理评分过程中的临时数据
- axios拦截器:统一处理HTTP异常和权限校验
- ECharts:实现评分分布、历史趋势等可视化图表
3. 核心功能实现
3.1 多角色权限系统
设计三类角色及其权限边界:
java复制// 权限注解示例
@PreAuthorize("hasRole('JUDGE')")
@PostMapping("/submit-score")
pub
