乒乓球比赛管理系统

1. 系统简介

1.1 系统概述

乒乓球比赛管理系统是一个用于管理乒乓球运动员、赛事、比赛记录、排名积分及系统公告的Web应用。

1.2 功能模块

模块 功能
首页 查看公告、各项目排名TOP 3
著名运动员 运动员的增删改查、搜索
赛事管理 赛事的增删改查、比赛记录管理
排名管理 排名的增删改查、年份/项目筛选
赛事冠军 查看各赛事冠军榜

2. 快速开始

2.1 环境要求

  • 后端:JDK 1.8 + MySQL 8.0+

  • 前端:现代浏览器 (Chrome/Edge/Firefox)

2.2 启动步骤

步骤1:启动MySQL数据库
复制代码
-- 创建数据库
CREATE DATABASE pingpong;
-- 执行 schema.sql 初始化表结构
步骤2:启动后端服务
复制代码
cd backend
mvn spring-boot:run

后端启动成功后访问 http://localhost:8090

步骤3:打开前端页面

直接用浏览器打开 frontend/index.html


3. 功能操作指南

3.1 首页

3.1.1 查看公告

首页最上方显示最新公告列表,点击公告可查看详情。
首页界面信息展示 公告详情信息展示

3.1.2 添加公告
  1. 点击「+ 添加公告」按钮

  2. 填写公告标题、选择类型、填写内容

  3. 勾选「发布」使公告在前台可见

  4. 点击「保存」

点击公告添加按钮展示

3.1.3 查看排名

首页右侧显示各项目(男单、女单、男双、女双、混双、男团、女团)的实时排名TOP 3。
首页界面信息展示


3.2 著名运动员

3.2.1 查看运动员列表

进入「著名运动员」页面,以卡片形式展示所有运动员。
标题著名运动员首页信息展示

3.2.2 搜索运动员

在搜索框中输入姓名关键字,实时过滤运动员列表。

3.2.3 查看运动员详情

点击任意运动员卡片,显示详细信息:

  • 姓名、国家、年龄、性别

  • 排名积分、当前排名

运动员详情信息展示

3.2.4 添加运动员
  1. 点击「+ 添加运动员」按钮

  2. 填写信息(姓名必填,其他可选)

  3. 点击「保存」

添加运动员信息按钮展示

3.2.5 编辑运动员

在详情页点击「编辑」按钮,修改信息后保存。
编辑运动员信息按钮展示

3.2.6 删除运动员

在详情页点击「删除」按钮,确认后删除。


3.3 赛事管理

3.3.1 查看赛事列表

进入「赛事管理」页面,按年份分组显示所有赛事。
赛事管理信息展示

3.3.2 筛选赛事

选择年份下拉框,筛选特定年份的赛事。

3.3.3 添加赛事
  1. 点击「+ 添加赛事」按钮

  2. 填写赛事名称(必填)

  3. 填写年份、地点、开始/结束日期、描述

  4. 点击「保存」

添加赛事信息界面展示

3.3.4 查看比赛记录

点击任意赛事卡片,进入赛事详情页面,显示该赛事下的所有比赛记录。

比赛按项目类别(男单、女单等)分组显示。
比赛详情信息展示

3.3.5 添加比赛
  1. 在赛事详情页面点击「+ 添加比赛」

  2. 填写选手1信息(姓名、国家)

  3. 选择局数(3局2胜/5局3胜/7局4胜)

  4. 输入每局比分

  5. 填写选手2信息

  6. 选择比赛状态、项目类别、轮次、场馆、日期等

  7. 点击「保存」

添加比赛信息界面展示

3.3.6 比赛状态说明
状态 含义
scheduled 已安排
ongoing 进行中
completed 已完成
cancelled 已取消

3.4 排名管理

3.4.1 查看排名

进入「排名管理」页面,默认显示当前年份的排名。
排名管理界面展示

3.4.2 筛选排名
  1. 选择年份

  2. 选择项目类别(男单/女单/男双/女双/混双/男团/女团)

3.4.3 添加排名
  1. 点击「+ 添加排名」按钮

  2. 选择年份、项目类别

  3. 输入排名(数字)

  4. 填写运动员姓名、国家、积分

  5. 点击「保存」

添加排名信息界面展示


3.5 赛事冠军

5.1 查看赛事列表

进入「赛事冠军」页面,显示有比赛记录的赛事列表。
赛事冠军首页展示

5.2 查看冠军详情

点击赛事,显示该赛事各项目的冠军信息。
具体赛事界面信息展示


4. 常见问题

4.1 后端无法启动

问题:端口8090被占用

解决 :修改 application.yml 中的端口号,或关闭占用端口的程序。

4.2 前端无法连接后端

问题:跨域或网络问题

解决

  1. 确认后端服务已启动

  2. 检查 index.html 中的 API_BASE 配置是否正确

4.3 数据库连接失败

问题:MySQL用户名或密码错误

解决 :修改 application.yml 中的数据库配置

4.4 比赛比分如何填写

比赛采用JSON格式存储,每局比分格式为:

复制代码
[
  {"p1": 11, "p2": 8},
  {"p1": 9, "p2": 11}
]

前端已自动处理,填写数字即可。

4.5 如何清空数据

直接操作数据库:

复制代码
USE pingpong;
DELETE FROM matches;
DELETE FROM competitions;
DELETE FROM players;
DELETE FROM announcements;
DELETE FROM player_rankings;

代码下载地址:

https://github.com/zcjter/pingpong-web

附录

附录A:技术栈

组件 版本
Spring Boot 2.7.14
Spring Data JPA -
MySQL 8.0+
Element UI -
JDK 1.8

附录B:默认端口

服务 端口
后端API 8090
前端 本地文件

附录C:支持的项目类别

  • 男单、女单

  • 男双、女双、混双

  • 男团、女团

相关推荐
奔跑的蜗牛FelixChioa2 小时前
python连接sqlite快速入门
开发语言·python·sqlite
王夏奇2 小时前
python-PyQt6库学习
开发语言·python·学习
Westward-sun.2 小时前
【Python+PyTorch】从零实现食物识别:自动生成标注 + CNN 训练全流程
pytorch·python·cnn
蓝净云2 小时前
python包管理工具uv
python·uv
啊阿狸不会拉杆2 小时前
《计算机视觉:模型、学习和推理》第 19 章-时序模型
人工智能·python·学习·机器学习·计算机视觉·时序模型
杨云龙UP2 小时前
Oracle与MySQL数据库运行状态快速检查指南
数据库·mysql·oracle
rrrjqy2 小时前
MySQL事务深度解析:从ACID特性到隔离级别实战
数据库·mysql·oracle
tryCbest2 小时前
Django 基础入门教程(第三篇):Admin后台与ORM进阶(单表、多表、聚合查询)
python·django
顶点多余2 小时前
Mysql数据库基础
linux·数据库·mysql