使用国产开源企业级文件管理系统基于 Spring Boot 3.5.x + Sa-Token + MyBatis Flex
Free-FS企业级文件管理系统后端1. 项目概述Free-FS 是一个基于Spring Boot 3.5 MyBatis Flex Sa-Token React/Vue构建的企业级文件管理系统后端提供大文件分片上传、多格式预览、多云存储支持、权限控制等功能并配套 Vue 3 前端。2. 核心术语术语含义分片上传将大文件切割为多个小块分别上传网络中断后只需上传未完成的分片。断点续传记录上传进度中断后从断点继续无需重新上传整个文件。秒传通过文件哈希值如 MD5校验若服务器已有相同文件直接建立引用无需重复上传。3. 解决的问题大文件上传困难传统方式网络中断需重新上传。存储平台绑定单一云存储切换成本高。预览能力弱仅支持少数格式Office/PDF 预览需额外配置。权限管理粗糙缺乏细粒度权限控制。部署复杂依赖多、配置繁琐。4. 核心功能4.1 文件管理支持列表视图与网格视图。文件分类、标签、搜索。4.2 大文件上传与秒传前端分片并行上传后端通过SSE 实时推送进度。断点续传记录每个分片状态续传从断点继续。秒传计算文件哈希服务器已有相同文件时直接建立引用。4.3 多云存储插件化SPI 插件化设计存储能力抽象为统一接口。内置支持本地存储、阿里云 OSS、七牛云 Kodo、AWS S3、RustFS。支持多存储平台并存新增平台只需实现接口无需修改主业务代码。4.4 在线预览类型支持格式图片JPG/PNG/GIF/WebP/SVG 等Office 文档DOC/DOCX/XLS/XLSX/PPT/PPTX需 LibreOffice文本代码30 种编程语言语法高亮音视频流式播放压缩包目录结构查看4.5 权限与安全基于Sa-Token的权限认证支持 JWT 无状态会话。细粒度权限控制文件查看、下载、编辑、删除等操作。4.6 文件分享与回收站分享模式公开链接、授权码可设有效期、访问次数。回收站支持批量还原、永久删除、自动清理。5. 安装与快速上手5.1 环境要求JDK 17Maven 3.8MySQL 8.0 或 PostgreSQL 14RedisLibreOffice可选用于 Office 预览5.2 安装步骤gitclone https://gitee.com/dromara/free-fs.gitcdfree-fs mvn cleaninstall-DskipTests5.3 数据库初始化MySQLCREATEDATABASEfree-fsCHARACTERSETutf8mb4COLLATEutf8mb4_general_ci;导入_sql/mysql/free-fs.sql。PostgreSQLCREATEDATABASEfree-fs ENCODINGUTF8LC_COLLATEzh_CN.UTF-8LC_CTYPEzh_CN.UTF-8;导入_sql/postgresql/free-fs_pg.sql。5.4 配置与运行修改fs-admin/src/main/resources/application-dev.yml中的数据库和 Redis 配置。启动服务cdfs-admin mvn spring-boot:run访问地址服务地址http://localhost:8080API 文档http://localhost:8080/swagger-ui.html默认账号admin/admin6. 技术架构6.1 技术栈后端Spring Boot 3.5.4 MyBatis FlexORM Sa-Token认证数据库MySQL 8.0 / PostgreSQL 14缓存Caffeine本地缓存 Redis分布式缓存存储插件SPI 设计支持多云存储扩展6.2 项目结构free-fs/ ├── fs-admin # 管理后台 ├── fs-api # API 模块 ├── fs-common # 通用工具 ├── storage-plugin-core # 存储插件接口 ├── storage-plugin-local # 本地存储实现 └── ... # 其他存储插件7. 与其他方案对比维度Free-FSMinIONextcloudSeafile技术栈Spring Boot 3.xGoPHPGo/C定位文件管理后端对象存储完整网盘完整网盘大文件上传分片/断点续传/秒传需自行实现支持支持在线预览多格式支持需自行实现支持支持多云存储插件化切换单一支持支持权限管理Sa-Token 细粒度简单细粒度细粒度部署难度中等需数据库低中等中等开源协议Apache 2.0AGPL v3AGPL v3GPL-3.08. 总结优势功能完整开箱即用。大文件上传分片/断点续传/秒传。插件化存储扩展支持多云切换。多格式在线预览。Sa-Token 细粒度权限管理。Apache 2.0 开源协议。局限需部署数据库MySQL/PostgreSQL Redis。Office 预览需配置 LibreOffice。适用场景企业级文件管理系统搭建。需要多云存储支持。需要大文件上传与预览能力。建议先部署基础版本跑通上传下载流程再根据需要接入云存储和配置预览功能。9. 项目地址后端https://gitee.com/dromara/free-fs前端https://gitee.com/xddcode/free-fs-frontend提示建议先体验基础功能再逐步接入云存储与高级配置。

相关新闻

揭秘WebGL 3D渲染:突破浏览器性能瓶颈的高斯泼溅技术

揭秘WebGL 3D渲染:突破浏览器性能瓶颈的高斯泼溅技术

揭秘WebGL 3D渲染:突破浏览器性能瓶颈的高斯泼溅技术 【免费下载链接】GaussianSplats3D Three.js-based implementation of 3D Gaussian splatting 项目地址: https://gitcode.com/gh_mirrors/ga/GaussianSplats3D 在数字孪生与元宇宙概念日益普及的今天&am…

2026/7/4 7:18:25 阅读更多 →
区块链的供应链金融系统

区块链的供应链金融系统

区块链原理与技术 一、方案设计 合约机制 信用凭证 信用凭证指企业间签发的应收账款单据,以及金融机构向车企签发的应收账款单据。简单来说,信用凭证指对企业未来盈利能力的衡量,或者企业债务。应收账款单据包含金额、逾期时间、和收款双…

2026/5/17 3:36:38 阅读更多 →
Neural Networks十年演进

Neural Networks十年演进

神经网络(Neural Networks) 的十年(2015–2025),是从“特定领域的深度模型”向“大一统的 Transformer 架构”,再到“具备逻辑思考能力的通用大脑”的演变。 这十年中,神经网络完成了从**“模仿…

2026/5/17 3:36:37 阅读更多 →

最新新闻

status-go终极指南:构建去中心化社交应用的完整Go后端解决方案

status-go终极指南:构建去中心化社交应用的完整Go后端解决方案

status-go终极指南:构建去中心化社交应用的完整Go后端解决方案 【免费下载链接】status-go The "backend" library for Status Apps 项目地址: https://gitcode.com/gh_mirrors/st/status-go 想要快速构建去中心化社交应用?&#x1f68…

2026/7/4 7:16:59 阅读更多 →
为什么选择Slash?对比原生NSAttributedString,这款富文本工具到底强在哪里?

为什么选择Slash?对比原生NSAttributedString,这款富文本工具到底强在哪里?

为什么选择Slash?对比原生NSAttributedString,这款富文本工具到底强在哪里? 【免费下载链接】Slash A better way to create attributed strings 项目地址: https://gitcode.com/gh_mirrors/slash/Slash 如果你是iOS或macOS开发者&…

2026/7/4 7:16:59 阅读更多 →
如何将Statsig Status Page部署到自定义域名:完整教程

如何将Statsig Status Page部署到自定义域名:完整教程

如何将Statsig Status Page部署到自定义域名:完整教程 【免费下载链接】statuspage A simple, zero-dependency, pure js/html status page based on GitHub Pages and Actions. 项目地址: https://gitcode.com/gh_mirrors/sta/statuspage Statsig Status Pa…

2026/7/4 7:14:59 阅读更多 →
CANN/PID批量滚动评分算法

CANN/PID批量滚动评分算法

PidFopdtBatchRolloutScore Algorithm 【免费下载链接】mat-chem-sim-pred 面向工业领域,聚焦计算仿真、预测两大核心场景,构建面向流程工业"机理数据"双轮驱动的领域计算层,推动AI for Science在材料化学领域的深度应用。 项目地…

2026/7/4 7:14:59 阅读更多 →
NCSN项目结构全解析:从配置文件到四大Runner类的使用指南

NCSN项目结构全解析:从配置文件到四大Runner类的使用指南

NCSN项目结构全解析:从配置文件到四大Runner类的使用指南 【免费下载链接】ncsn Noise Conditional Score Networks (NeurIPS 2019, Oral) 项目地址: https://gitcode.com/gh_mirrors/nc/ncsn Noise Conditional Score Networks(NCSN)…

2026/7/4 7:14:59 阅读更多 →
Panel Colorizer与Plasma Manager集成:NixOS环境下的最佳实践

Panel Colorizer与Plasma Manager集成:NixOS环境下的最佳实践

Panel Colorizer与Plasma Manager集成:NixOS环境下的最佳实践 【免费下载链接】plasma-panel-colorizer Latte-Dock and WM status bar customization for the KDE Plasma panels 项目地址: https://gitcode.com/gh_mirrors/pl/plasma-panel-colorizer 想要为…

2026/7/4 7:12:58 阅读更多 →

日新闻

Memcached 1.6.43 发布:关键安全修复版本,多项问题得到解决

Memcached 1.6.43 发布:关键安全修复版本,多项问题得到解决

Memcached 1.6.43 正式发布,这是一个关键的安全修复版本,修复了多个方面的问题,还对部分功能进行了优化。 安全修复亮点 此次发布在安全修复上表现突出。binprot 避免了项目引用计数溢出,mcmc 因安全问题提升了上游版本号&#xf…

2026/7/4 0:04:29 阅读更多 →
终极指南:使用HMCL启动器跨平台畅玩Minecraft的完整解决方案

终极指南:使用HMCL启动器跨平台畅玩Minecraft的完整解决方案

终极指南:使用HMCL启动器跨平台畅玩Minecraft的完整解决方案 【免费下载链接】HMCL A Minecraft Launcher which is multi-functional, cross-platform and popular 项目地址: https://gitcode.com/gh_mirrors/hm/HMCL HMCL(Hello Minecraft! Lau…

2026/7/4 0:06:29 阅读更多 →
KMX63与PIC18F66K40在嵌入式HMI中的硬件协同与低功耗设计

KMX63与PIC18F66K40在嵌入式HMI中的硬件协同与低功耗设计

1. KMX63与PIC18F66K40的硬件协同架构解析KMX63作为一款三轴加速度计和磁力计组合传感器,与PIC18F66K40微控制器的搭配堪称嵌入式HMI开发的黄金组合。这套硬件组合的核心优势在于KMX63提供的高精度运动感知能力与PIC18F66K40强大的信号处理能力形成了完美互补。KMX6…

2026/7/4 0:06:29 阅读更多 →

周新闻

月新闻