SpringBoot2+Vue3+MySQL 美食分享平台源码 前后端分离实战项目

发布时间:2026/8/1 22:01:22
SpringBoot2+Vue3+MySQL 美食分享平台源码 前后端分离实战项目 一、项目简介本项目是一个基于 Spring Boot 2 Vue 3 MySQL 技术栈开发的前后端分离美食分享平台。系统采用经典的前后端分离架构后端提供 RESTful API 接口前端通过 Vue 3 单页应用进行交互。平台包含普通用户端和管理员端两大角色普通用户可完成注册登录、浏览探索美食帖子、发布与管理自己的内容、进行点赞收藏评论等社交互动并接收实时通知管理员则负责平台的内容审核、用户管理、分类维护和整体数据概览。系统内置了基于协同过滤的智能推荐模块能够根据用户的点赞行为推荐可能感兴趣的美食内容。二、技术栈技术分类说明后端框架Spring Boot 2.7.xORMMyBatis-Plus 3.5.x权限认证JWT (jjwt) 自定义拦截器前端框架Vue 3 (Composition API) Vue Router 4状态管理PiniaUI 组件库Element Plus构建工具Vite数据库MySQL 8.x工具库Hutool (MD5加密)、Lombok三、功能模块管理员端数据概览统计平台用户总数、帖子总数、评论总数以卡片形式展示在仪表盘首页便于管理员快速掌握平台运营规模。用户管理分页加载用户列表支持按用户名或昵称关键词模糊搜索可对指定用户执行启用/禁用操作禁用后该用户无法登录系统。内容审核查看所有帖子列表支持按帖子状态待审核/已通过/已下架筛选及关键词搜索对待审核帖子执行通过或下架操作审核结果自动生成通知推送给作者。评论管理分页查看全平台所有评论支持按内容关键词搜索定位违规评论可一键删除违规评论删除后同步清理嵌套回复。分类管理维护美食分类体系支持新增分类填写名称、图标、排序号、编辑分类信息、删除分类删除前校验该分类下是否存在帖子。普通用户端用户注册填写用户名、密码、昵称、邮箱完成账号注册密码经 MD5 加密存储注册成功后自动跳转至登录页。用户登录输入用户名和密码后端校验通过后生成 JWT Token 并返回用户基本信息前端将 Token 持久化用于后续请求鉴权。首页浏览展示分类列表、最新美食帖子8条和热门帖子按点赞数降序取6条为用户提供多维度内容入口。探索美食支持按分类筛选、按标题或摘要关键词搜索美食帖子列表采用分页加载每页固定条数方便浏览大量内容。帖子详情展示帖子完整正文、封面图、难度等级、烹饪时间、分步骤图文教程每步含文字说明和配图以及作者信息支持点赞、收藏、评论操作。发布美食填写标题、封面图、摘要、正文内容、难度、烹饪时间、所属分类并动态添加多步骤图文教程步骤说明 步骤图片提交后进入待审核状态。编辑帖子对已发布的帖子修改标题、封面、内容、步骤等字段编辑保存后帖子自动重新进入待审核状态确保内容合规。删除帖子删除自己发布的帖子后台级联删除该帖子关联的步骤记录、点赞记录和收藏记录保持数据一致性。点赞帖子对任意帖子执行点赞/取消点赞操作点赞状态实时更新并同步刷新帖子的点赞数同时向帖子作者推送点赞通知。收藏帖子收藏/取消收藏感兴趣的美食帖子收藏数实时更新收藏成功后通知帖子作者方便作者感知内容受欢迎程度。我的帖子分页查看当前用户发布的所有帖子列表展示帖子状态待审核/已通过/已下架便于用户管理自己的内容资产。我的收藏分页查看当前用户收藏的所有帖子列表点击可快速跳转至帖子详情页。评论帖子对帖子发表评论支持回复他人评论形成嵌套评论树结构评论内容实时展示在详情页评论区。删除评论删除自己发布的评论管理员可以删除任意用户的评论删除时同步移除该评论下的所有子回复。通知列表分页查看系统通知涵盖点赞、收藏、评论、审核结果四类通知每条通知展示触发用户、关联帖子和时间。标记已读支持一键将所有未读通知标记为已读减少红点提示干扰。未读计数顶部导航实时展示未读通知数量用户无需刷新即可感知新消息。个人资料查看并编辑个人昵称、头像、邮箱、手机号等基础信息修改后即时生效。修改密码输入原密码和新密码完成登录密码修改原密码校验通过后以 MD5 加密存储新密码。智能推荐基于协同过滤算法根据当前用户的点赞行为历史计算相似用户推荐相似用户点赞过的且当前用户未交互过的美食帖子。文件上传支持上传图片文件封面图、步骤图、头像等后端存储后返回可访问的 URL 地址供前端直接引用。四、项目总结本项目是一个功能完整、代码结构清晰的前后端分离实战项目。技术亮点在于后端采用 Spring Boot 2 MyBatis-Plus 组合配合 JWT 自定义拦截器实现无状态鉴权前端使用 Vue 3 Composition API Pinia Element Plus组件化程度高系统内置了通知推送、嵌套评论、协同过滤推荐等进阶功能覆盖了社区类平台的典型业务场景。项目附带数据库初始化脚本和万字开发文档非常适合作为 Java 全栈学习者、毕业设计选题以及中小型内容社区二次开发的基础脚手架。界面展示交付内容本项目为完整交付包含完整后端源码完整前端源码数据库初始化脚本SQL万字项目文档设计文档 / 论文可作课程设计、毕业设计参考获取完整源码完整前后端源码 数据库脚本 万字项目文档见 Gitee 仓库https://gitee.com/kangxihuang/src-K204