一、项目概述
1.1 项目简介
本基于 SpringBoot 与 Vue 博客系统是一套前后端分离的博客展示与内容管理平台,系统分为前端用户门户与后端管理后台两大模块。普通用户可以浏览博主信息、博客内容、平台公告,对博主进行点赞、收藏、评论;管理员登录后台可以统一管理博主分类、博主信息、轮播图、公告信息、用户评论等全部数据。
系统采用主流前后端分离架构:后端 SpringBoot 提供 RESTful 接口,前端 Vue 实现页面交互,满足博客内容展示、社交互动、后台内容运维一体化需求。
1.2 开发技术栈
后端技术
核心框架:SpringBoot 2.x
持久层:MyBatis / MyBatis-Plus
数据库:MySQL
权限认证:JWT Token 登录认证
文件处理:图片 / 视频上传管理
构建工具:Maven
前端技术
核心框架:Vue2/Vue3
UI 组件库:Element UI
网络请求:Axios
路由:Vue Router
状态管理:Vuex
页面构建:HTML + CSS + JavaScript
1.3 系统角色划分
普通注册用户
注册账号、登录系统;浏览首页公告、博主榜单;查看博主详情;对博主点赞、收藏、发布评论;进入个人中心新增 / 编辑自己的博主信息。管理员(admin)
登录管理后台;管理管理员账号、前台用户;维护轮播图、博客分类、博主榜单信息、博主评论、平台公告;实现数据新增、详情查看、修改、删除操作。
二、系统功能模块设计
2.1 前端用户门户模块(访客 / 登录用户)
2.1.1 登录 & 注册模块
用户登录:输入账号、密码,支持记住密码;校验账号密码,登录成功跳转首页;
用户注册:新用户填写账号密码完成注册;
登录状态校验,未登录无法使用点赞、收藏、评论、个人中心功能。
2.1.2 首页模块
顶部轮播图自动轮播展示;
展示平台公告信息列表;
顶部导航栏:首页、公告信息、博客榜单、个人中心。
2.1.3 公告信息模块
- 分页展示全部平台公告;展示公告标题、发布时间、公告配图、公告详情文本;支持查看更多公告。
2.1.4 博客榜单模块
博主列表页面
支持多条件筛选:博客分类下拉、博主账号、博主姓名搜索;
快速分类筛选:全部、博客分类 1/2/3/4/5/6;
卡片形式展示博主预览信息,点击卡片进入博主详情。
博主详情页面
展示博主头像、博客分类、博主账号、博主姓名、博主简介、文章内容、点击次数、收藏数量;
互动功能:收藏 / 取消收藏博主、点赞 / 取消点赞;
评论区:输入评论提交,查看其他用户评论;
博主本人登录后,可见【修改、删除】按钮,管理自身博主信息。
2.1.5 个人中心模块
博主信息编辑表单;
表单字段:博客分类选择、博主账号、博主姓名、博主简介、文章正文;
文件上传:博主图片上传、博主视频上传;
支持保存、取消操作,完成博主信息新增与编辑。
2.2 后端管理后台模块(管理员)
管理员账号登录后台,左侧菜单栏提供所有管理功能:
管理员管理
管理员账号维护,新增、修改、删除管理员。用户管理
管理前台注册普通用户账号信息。轮播图管理
维护前台首页顶部轮播图片,新增、修改、删除轮播图。博客榜单管理
后台统一管理所有博主信息,查看详情、新增、修改、删除博主数据。博客榜单评论管理
管理用户针对博主发布的所有评论,违规评论可删除。博客分类管理
维护博主分类数据(游戏博主、博客分类 1~6 等),作为前台筛选条件。公告信息管理
维护前台展示的平台公告,支持公告新增、修改、删除、详情查看、标题检索。
三、数据库设计(核心数据表)
3.1 用户表 user
| 字段 | 类型 | 说明 |
|---|---|---|
| id | int | 主键自增 |
| username | varchar | 账号 |
| password | varchar | 密码 |
| nickname | varchar | 用户昵称 |
| create_time | datetime | 注册时间 |
3.2 管理员表 admin
| 字段 | 类型 | 说明 |
|---|---|---|
| id | int | 主键 |
| username | varchar | 管理员账号 |
| password | varchar | 密码 |
3.3 博客分类表 blog_category
| 字段 | 类型 | 说明 |
|---|---|---|
| id | int | 主键 |
| category_name | varchar | 分类名称(游戏博主、博客分类 1 等) |
3.4 博主信息表 blog
| 字段 | 类型 | 说明 |
|---|---|---|
| id | int | 主键 |
| category_id | int | 关联博客分类 ID |
| blog_account | varchar | 博主账号 |
| blog_name | varchar | 博主姓名 |
| blog_intro | text | 博主简介 |
| article | text | 文章内容 |
| avatar | varchar | 博主头像图片地址 |
| video | varchar | 博主视频地址 |
| click_num | int | 点击次数 |
| like_num | int | 点赞数量 |
| collect_num | int | 收藏数量 |
| user_id | int | 发布博主信息的用户 ID |
3.5 博主点赞表 blog_like
| 字段 | 类型 | 说明 |
|---|---|---|
| id | int | 主键 |
| blog_id | int | 博主 ID |
| user_id | int | 用户 ID |
3.6 博主收藏表 blog_collect
| 字段 | 类型 | 说明 |
|---|---|---|
| id | int | 主键 |
| blog_id | int | 博主 ID |
| user_id | int | 用户 ID |
3.7 评论表 blog_comment
| 字段 | 类型 | 说明 |
|---|---|---|
| id | int | 主键 |
| blog_id | int | 博主 ID |
| user_id | int | 评论用户 ID |
| content | text | 评论内容 |
| create_time | datetime | 评论时间 |
3.8 公告表 notice
| 字段 | 类型 | 说明 |
|---|---|---|
| id | int | 主键 |
| title | varchar | 公告标题 |
| content | text | 公告正文 |
| img | varchar | 公告图片地址 |
| create_time | datetime | 发布时间 |
3.9 轮播图表 banner
| 字段 | 类型 | 说明 |
|---|---|---|
| id | int | 主键 |
| img_url | varchar | 图片地址 |
| sort | int | 排序号 |
四、系统页面展示说明
4.1 前端用户页面
用户登录页面
清新卡通背景,提供账号、密码输入框,记住密码选项,登录按钮、注册用户按钮;普通用户从该页面进入系统。首页
顶部导航栏,大图轮播组件;首页展示公告信息入口。公告信息页面
列表展示所有公告,包含公告发布日期、标题、简介、配图。博客榜单列表页
博主卡片展示,支持按分类、博主账号、博主姓名检索筛选。博主详情页面
展示博主图文信息,点赞、收藏交互按钮,评论输入框与评论列表。个人中心(博主编辑页)
表单用于登录用户新增 / 修改自己的博主信息,支持图片、视频文件上传。
4.2 管理员后台页面
管理员登录页
海景背景,账号密码输入框,管理员登录入口。后台主界面
左侧功能菜单栏,右侧数据表格区域;统一风格为渐变紫色后台主题。博客分类管理:分页展示所有分类,支持新增、详情、修改、删除;
公告信息管理:公告列表,支持标题检索、增删改查;
轮播图、博主榜单、评论、用户、管理员统一后台管理。
五、核心业务流程
5.1 用户浏览博主流程
用户打开系统,登录账号;
导航栏进入【博客榜单】,筛选博主;
点击博主卡片进入详情页面;
执行操作:点赞博主、收藏博主、发表评论;
博主本人登录,可以在详情页修改、删除自己信息。
5.2 用户发布博主信息流程
用户登录,点击【个人中心】;
填写博主各项信息,上传图片、视频;
选择博客分类,点击保存;
保存成功后,博主信息展示在博客榜单页面。
5.3 管理员后台运维流程
admin 账号登录后台;
根据需求进入对应菜单:新增公告、新增博客分类、管理用户评论、维护轮播图;
对数据执行新增、查看详情、修改、删除操作;
后台修改的数据实时同步到前端用户门户展示。
六、系统特色功能
前后端分离架构:SpringBoot 后端提供接口,Vue 前端独立部署,便于维护、迭代;
丰富用户互动:点赞、收藏、评论社交功能,完善博客社区属性;
文件上传支持:博主图片、视频上传存储;
双端视图区分:普通用户前台浏览交互、管理员后台统一管控所有资源;
多条件检索筛选:博主榜单支持分类、名称、账号多维度搜索;
权限区分:普通用户仅能编辑自己的博主信息,管理员拥有全部数据管理权限。
七、系统部署环境
7.1 开发环境
操作系统:Windows / MacOS
JDK 版本:JDK8
MySQL:5.7 / 8.0
Node.js:14+
开发工具:IDEA、VSCode、Navicat
7.2 生产部署环境
服务器:Linux CentOS
容器:Tomcat / SpringBoot 内置 Tomcat
数据库:MySQL
前端打包:npm run build,静态资源部署 Nginx
文件存储:本地存储 / 对象存储 OSS(可选扩展)
八、项目扩展方向(可选优化)
增加私信聊天功能;
完善通知消息(点赞、评论消息推送);
添加富文本编辑器,支持图文混排博客文章;
接入 OSS 云存储,替代本地文件存储;
添加浏览统计、访问日志;
增加评论审核功能,管理员审核评论后展示。
九、总结
本基于 SpringBoot+Vue 博客系统完整实现博客社区基础业务,区分普通用户与管理员两大角色,覆盖内容展示、用户互动、后台内容管理全流程。架构采用流行前后端分离方案,代码结构清晰,易于二次开发与功能扩展,适合作为毕业设计、中小型博客社区项目原型。
十、项目资料
👇🏻 精彩专栏推荐订阅👇🏻 在下方专栏👇🏻不然下次找不到哟
《Java精品推荐项目》
《springboot+vue项目100套》
《ssm项目100套》
《微信小程序合集》