功能一览
- 个人网盘:上传、下载、建文件夹,实时看剩余空间。
- 大文件也能传:断网后可接着传,不用从头再来。
- 分享链接发给好友:可设提取码和有效期,文件夹支持打包下载。
- 图片自动打标签,按标签快速找图。
- 删错可救:回收站恢复,或彻底清空。
- 管理后台:用户与配额、上传统计、扩容审核。
- 可选阿里云 OSS,本地/云端存储都能演示。
- 电脑、平板、手机浏览器均可使用,界面自适应屏幕宽度。
核心亮点与创新点
| 亮点 | 亮点说明 |
|---|---|
| 分片上传 + 断点续传 | 大文件自动分片上传,支持断点续传;合并成功后再计入已用空间 |
| 存储可插拔 | 网盘文件可存本地磁盘,也可切换为阿里云 OSS,便于演示云存储方案 |
| AI 图片打标 | 图片上传后自动识别标签,列表可按标签筛选;未配置 AI 时按规则兜底打标 |
| 安全分享 | 支持文件/文件夹分享、提取码与有效期;访客免登录访问,且仅能浏览分享范围内内容 |
| 配额闭环 | 回收站释放占用;用户可申请扩容,管理员审核后站内消息通知结果 |
| 鉴权读流 | 下载与预览均经登录校验,不将网盘目录直接暴露为公网静态链接 |
系统技术栈
| 层次 | 技术 |
|---|---|
| 后端 | Java 21、Spring Boot 3、Spring Security、JWT、MyBatis-Plus |
| 前端 | Vue 3、Element Plus、响应式布局(PC / 平板 / 手机) |
| 数据 | MySQL |
| 网盘存储 | 本地磁盘或阿里云 OSS(可配置切换) |
| 大文件 | 分片上传、断点续传 |
| AI | 通义千问等 OpenAI 兼容视觉接口(可选) |
| 其它 | 图形验证码、操作日志、接口文档 |
前后端分离;网盘下载与预览统一走鉴权接口,不暴露公网静态目录。
数据库表概述
合计 12 张业务表(系统 6 + 网盘 6)。
系统表
| 表名 | 说明 |
|---|---|
| sys_role | 角色(管理员、普通用户) |
| sys_user | 用户账号与资料 |
| sys_menu | 后台菜单 |
| sys_login_log | 登录日志 |
| sys_operation_log | 操作日志 |
| sys_message | 站内消息 |
网盘表
| 表名 | 说明 |
|---|---|
| drive_node | 文件/文件夹、回收站 |
| drive_quota | 用户配额与已用空间 |
| drive_upload_session | 分片上传会话 |
| drive_image_tag | 图片智能标签 |
| drive_quota_request | 扩容申请与审核 |
| drive_share | 分享链接与下载限制 |
关系说明
- 用户与角色一一对应;网盘数据按用户隔离。
- 注册时自动分配默认网盘配额。
难度与范围
| 项目 | 说明 |
|---|---|
| 等级 | 标准(standard) |
| 适合 | 已学 Spring Boot + Vue,需要业务完整、带工程亮点的个人网盘课题 |
| 包含 | 网盘、分片续传、回收站、分享、AI 打标、管理端统计、用户与日志 |
系统截图
登录页

用户网盘首页

移动端网盘首页

分片上传进度

回收站

我的分享

访客分享落地页

管理端控制台

网盘总览

创建分享弹窗

角色与功能说明
内置 管理员、普通用户 两种登录角色;另支持 分享访客(免登录)与服务条款等公开页。
普通用户
登录后使用个人网盘,仅可访问本人文件与配额。
认证与账号
| 功能 | 说明 |
|---|---|
| 注册 | 用户名注册,自动创建网盘空间 |
| 登录 | 用户名、密码与图形验证码 |
| 退出 | 清除登录状态 |
| 个人中心 | 昵称、邮箱、手机等资料 |
| 修改密码 | 校验旧密码后更新 |
| 头像 | 独立头像上传 |
网盘主页
| 功能 | 说明 |
|---|---|
| 目录浏览 | 文件夹下钻、面包屑返回 |
| 列表 / 网格 | 视图切换,偏好记忆 |
| 侧栏归档 | 全部文件、最近上传、按类型分类 |
| 搜索筛选 | 关键字、类型、大小、AI 图片标签 |
| 新建文件夹 | 同级不重名 |
| 上传 | 拖拽多选;大文件分片上传与进度展示 |
| 下载 | 单文件、多选打包 ZIP |
| 重命名 / 移动 / 复制 | 树形选择目标目录 |
| 删除 | 进入回收站并释放占用 |
| 预览 | 图片、PDF、文本、音视频等 |
| 图片 AI 标签 | 展示标签,支持按标签筛选 |
| 容量条 | 总配额与已用空间 |
| 扩容申请 | 提交申请,等待管理员审核与通知 |
回收站
| 功能 | 说明 |
|---|---|
| 列表 | 已删除文件,按时间排序 |
| 恢复 | 还原文件;父目录在回收站时需先恢复上级 |
| 彻底删除 | 删除记录与存储文件 |
| 清空回收站 | 批量彻底删除 |
我的分享
| 功能 | 说明 |
|---|---|
| 创建分享 | 文件或文件夹;提取码、有效期、下载次数 |
| 分享列表 | 复制链接、取消分享 |
| 安全 | 提取码保护;关闭后不可访问 |
系统消息
| 功能 | 说明 |
|---|---|
| 消息列表 | 配额审核等通知 |
| 未读 / 已读 | 标记已读,可跳转相关页面 |
| 清理 | 过期已读消息自动清理 |
其它
| 功能 | 说明 |
|---|---|
| 服务条款 / 隐私政策 | 公开页面,无需登录 |
| 无权限页 | 访问受限时的提示 |
管理员
登录管理后台,维护用户、菜单、网盘与日志。
控制台
| 功能 | 说明 |
|---|---|
| 数据概览 | 用户数、文件数、占用空间等 |
| 上传趋势 | 近 7 日上传量图表 |
网盘总览
全站文件数、存储占用、用户占用排行。
用户配额
查看与调整用户配额,只读浏览用户网盘目录。
配额申请审核
处理扩容申请,通过后通知用户。
分享管理
查看全站分享,可强制取消链接。
用户 / 菜单 / 日志
用户管理、菜单配置、登录与操作日志查询与清理。
分享访客
| 功能 | 说明 |
|---|---|
| 分享页 | 输入提取码(若启用)后访问 |
| 文件夹分享 | 浏览分享目录下的子目录 |
| 下载 / ZIP | 单文件或目录打包下载,受次数限制 |
| 预览 | 支持类型的在线预览 |
| 安全 | 仅能访问分享范围内的文件 |