三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

SpringBoot3+React18+MySQL 游戏攻略平台源码 前后端分离实战

SpringBoot3+React18+MySQL 游戏攻略平台源码 前后端分离实战

一、项目简介

GameHub 是一个前后端分离的游戏攻略平台,前端采用 React 18 + Ant Design 5,后端采用 Spring Boot 3 + MyBatis-Plus,数据库使用 MySQL 8。系统面向普通用户和管理员两种角色,覆盖攻略发布与审核、社区讨论、积分商城、私信聊天、个人中心等完整业务链路。项目使用 JWT 实现无状态认证,通过 Spring Security 6 做接口权限控制,整体结构清晰,适合作为游戏社区类项目的参考实现或二次开发基础。

二、技术栈

技术说明
后端框架Spring Boot 3.2
ORMMyBatis-Plus 3.5.5
权限认证Spring Security 6 + JWT(jjwt 0.12.5)
前端框架React 18 + React Router 6
UI 组件库Ant Design 5
状态管理React Context(AuthContext)
构建工具Vite 5
数据库MySQL 8 + MyBatis-Plus 分页插件
文件上传MultipartFile + 本地存储

三、功能模块

管理员端

  • 仪表盘:展示用户总数、攻略总数、评论总数、讨论帖总数、待审核攻略数、订单总数,便于运营掌握平台核心数据。
  • 用户管理:分页展示用户列表,支持按用户名/昵称搜索,可启用或禁用用户账号,禁用后该用户无法登录。
  • 管理员管理:支持新增管理员(设置用户名、密码、昵称、邮箱),编辑管理员信息,删除非超级管理员账号。
  • 攻略审核:分页查看所有攻略,支持按状态(待审核/已通过/已驳回)筛选和关键词搜索;可审核通过或驳回攻略,删除攻略时级联删除关联的评论、点赞、收藏记录。
  • 评论管理:分页查看所有评论,支持启用/禁用评论,删除违规评论。
  • 讨论管理:分页查看所有讨论帖,支持启用/禁用帖子,删除帖子下的回复。
  • 游戏分类管理:新增/编辑游戏分类(名称、图标、封面、描述、排序);删除分类时若已有攻略引用则禁止删除,保证数据完整性。
  • 商品管理:分页查看积分商品,支持新增/编辑商品(名称、描述、封面、积分价格、库存),删除商品。
  • 订单管理:分页查看所有兑换订单,可修改订单状态(待处理/已完成等)。
  • 轮播图管理:查看轮播图列表(按排序字段升序),支持新增/编辑/删除轮播图(标题、图片、链接、排序、状态)。

普通用户端

  • 注册/登录:填写用户名、密码、昵称完成注册,登录后自动获取 JWT Token 并跳转首页或后台。
  • 浏览攻略列表:支持按游戏分类筛选、关键词搜索标题/内容,分页展示攻略卡片。
  • 查看攻略详情:展示标题、内容、封面、作者信息、游戏名称,自动增加浏览量,显示点赞/收藏状态。
  • 发布攻略:填写标题、内容、封面图片、关联游戏,提交后状态为待审核,发布成功获得 50 积分。
  • 编辑攻略:修改已发布的攻略标题、内容、封面、游戏,重新提交后进入待审核状态。
  • 点赞/取消点赞攻略:点击点赞按钮切换状态,点赞后攻略点赞数 +1,用户获得 2 积分。
  • 收藏/取消收藏攻略:点击收藏按钮切换状态,收藏后攻略收藏数 +1。
  • 发表评论:在攻略详情页输入评论内容,提交后评论数 +1,用户获得 5 积分。
  • 查看评论列表:按时间倒序展示顶级评论,每条评论下可查看回复列表。
  • 浏览社区讨论:按游戏分类筛选帖子列表,展示标题、作者、回复数、游戏名称。
  • 发布讨论帖:填写标题、内容、关联游戏,发布后状态为已通过。
  • 回复讨论帖:在帖子详情页输入回复内容,回复后帖子回复数 +1。
  • 查看积分商城:分页展示上架商品(名称、描述、封面、积分价格、库存)。
  • 兑换商品:选择商品提交兑换,扣除对应积分并扣减库存,生成兑换订单。
  • 查看兑换订单:分页展示个人兑换记录,包含订单号、商品名称、消耗积分、状态。
  • 查看积分记录:分页展示个人积分变动明细(类型、数额、描述、时间)。
  • 发送私信:选择接收用户,输入内容发送私信,消息状态为未读。
  • 查看会话列表:按最新消息时间排序展示所有对话,显示对方昵称、头像、最后消息。
  • 查看聊天记录:进入会话后按时间正序展示全部消息,自动将对方未读消息标记为已读。
  • 查看未读消息数:顶部展示未读私信数量。
  • 个人中心:查看/编辑昵称、邮箱、手机号、性别、个人简介、头像。
  • 修改密码:输入原密码、新密码完成密码修改。
  • 查看他人主页:通过用户 ID 查看对方昵称、头像、等级等公开信息。
  • 每日登录奖励:每天首次登录自动获得 10 积分,记录积分来源为"每日登录奖励"。

四、项目总结

该项目技术选型主流且统一,后端 Spring Boot 3 + MyBatis-Plus 提供稳定的 CRUD 与分页能力,前端 React 18 + Ant Design 5 保证开发效率与交互体验。JWT 认证 + Spring Security 6 的权限设计简洁清晰,适合学习前后端分离架构下的认证流程。业务功能覆盖攻略社区的核心闭环(发布-审核-互动-激励-兑换),并包含私信等实时交互模块,代码结构分层明确,可直接作为课程设计、毕业设计或游戏社区类商业项目的二次开发基础。

界面展示

交付内容

本项目为完整交付,包含:

  • 完整后端源码
  • 完整前端源码
  • 数据库初始化脚本(SQL)
  • 万字项目文档(设计文档 / 论文,可作课程设计、毕业设计参考)

获取完整源码

完整前后端源码 + 数据库脚本 + 万字项目文档见 Gitee 仓库:https://gitee.com/kangxihuang/src-K301

← 返回列表