基于Springboot+服务器磁盘的本地文件存储方案

embedded/2025/3/19 14:27:19/

[local-file-system]基于服务器磁盘的本地文件存储方案

仅提供后端方案
github

环境

  • JDK11
  • linux/windows/mac

应用场景

  • 适用于ToB业务,中小企业的单体服务,仅使用磁盘存储文件的解决方案

  • 仅使用服务器磁盘存储

  • 与业务实体相结合的文件存储方案,如企业中对于设备信息维护,需要上传对应文件,类型包括”设备采购合同文件“,”设备验收照片“等,在本项目中的维护形式可见如下图。

效果示例

在这里插入图片描述

表结构设计

本项目使用sqlserver作为数据库,目前仅提供sqlserver的表脚本初始化sql。

本项目持久性框架使用Mybatis-Plus,可轻松切换至Oracle,MySql等数据库。

本项目主要使用两个表

  • t_file 文件信息的存储表,包含文件名称、类型后缀、大小、相对文件路径(目前file_path表相对)、module模块名(可对应配置存储目录)。注意,此表中module_name模块用于分类。
  • tr_link_file 文件与模块的关联表,使用link_id表示其他各种表(设备表、工厂表)的id主键, file_id表示t_file的id主键。module_name表示属于哪个模块的文件关联(可以表示此link_id的来源)。

见如下图,可表示为

  • 设备需要维护设备照片信息,我们需要提前定义module_name为”Equipment_photo“,在前端通过api上传后存储到t_file,而实际文件存储到对应磁盘位置,并返回FileInfo信息(fileId,fileName),前端得到已经存储的文件id后,可在用户点击保存信息时,将fileId集合携带,系统再进行关联操作,在tr_link_file表中维护对应的关联数据。(缺点:用户上传文件后,如果不进行保存设备信息,那么tr_link_file的关联是无法建立的。)
    在这里插入图片描述

http://www.ppmy.cn/embedded/173878.html

相关文章

华为ISC+战略规划项目数字化转型驱动的智慧供应链革新(169页PPT)(文末有下载方式)

资料解读:华为ISC战略规划项目数字化转型驱动的智慧供应链革新 详细资料请看本解读文章的最后内容。 华为的ISC战略规划项目是其供应链数字化转型的核心,旨在通过智慧供应链的革新,提升企业的竞争力和运营效率。本文将从多个维度详细解读这…

TCP 通信流程图

下面给出一个详细的 TCP 通信流程图,演示 客户端(Client) 与 服务器(Server) 之间通过 TCP 协议进行通信时的各个步骤。这里假设: 服务器 IP:192.168.1.100,监听 80 端口客户端 IP&…

ora-600 ktugct: corruption detected---惜分飞

接手一个oracle 21c的库恢复请求,通过Oracle数据库异常恢复检查脚本(Oracle Database Recovery Check)脚本检测之后,发现undo文件offline之后,做了resetlogs操作,导致该文件目前处于WRONG RESETLOGS状态 尝试恢复数据库ORA-16433错误 SQL> recover datafile 1; ORA-00283:…

Spring Bean 生命周期深度解析:原理、场景与优化策略

一、生命周期核心阶段与技术原理 1. 实例化阶段:反射与缓存机制 Spring 通过反射创建 Bean 实例,单例 Bean 在容器启动时初始化,原型 Bean 在首次获取时创建。为解决循环依赖问题,Spring 采用三级缓存机制: 一级缓存…

《声音的未来:语音识别文献解读》专栏介绍及其文章解读目录

声音的未来:语音识别文献解读 ——探索语音技术的前沿,解读未来的声音世界—— 专栏介绍 欢迎来到 “声音的未来:语音识别文献解读”!这是一个专注于语音识别领域前沿研究与技术突破的深度解读专栏。在这里,我们将带…

OneCyber 平台

OneCyber 平台是一个专注于 网络安全 和 风险管理 的综合性解决方案平台。它旨在帮助企业和组织应对日益复杂的网络威胁,提供从威胁检测、风险评估到响应和恢复的全方位服务。以下是关于 OneCyber 平台的一些关键信息: 核心功能 威胁检测与分析&#xff…

最大公约数

4.最大公约数 - 蓝桥云课 最大公约数 题目描述 给定两个正整数 A,B,求它们的最大公约数。 输入描述 第1行为一个整数 T,表示测试数据数量。 接下来的 T 行每行包含两个正整数 A,B。 1≤T≤105,1≤A,B≤109。 输出描述 输出共 T 行&…

本专栏开栏通知相关申明

申明 买了电吉他还有电钢琴,开这个栏目一来是为了督促自己不要浪费钱,好好学习音乐,二来是发现在相关的乐理书籍存在技术壁垒,尤其是我看了某乐理图书,发现书中介绍过于复杂,学术壁垒过于高了,所…