[local-file-system]基于服務器磁盤的本地文件存儲方案

[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.pswp.cn/pingmian/72507.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/72507.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/72507.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

P5708 【深基2.習2】三角形面積(洛谷—python)

題目描述 一個三角形的三邊長分別是 a、b、c,那么它的面積為 p(p?a)(p?b)(p?c)?,其中 p21?(abc)。輸入這三個數字,計算三角形的面積,四舍五入精確到 1 位小數。 輸入格式 第一行輸入三個實數 a,b,c,以空格隔開…

智慧加油站小程序數據庫設計文檔

智慧加油站系統 - 數據庫與API設計文檔 1. 數據庫設計 1.1 ER模型 系統的核心實體關系如下&#xff1a; 用戶(User) ---< 訂單(Order) ---< 加油記錄(RefuelRecord)| | || | vv v …

C++博客分享

本周的一些 C視頻分享, 或許后續會做一些內容總結. 博客 Polymorphic, Defaulted EqualityConstexpr factors_ofC26: Removing language featuresBypassing the branch predictor Meeting C 2024 Clean CMake for C (library) developers - Kerstin KellerAn Introduction …

【藍橋杯每日一題】3.16

&#x1f3dd;?專欄&#xff1a; 【藍橋杯備篇】 &#x1f305;主頁&#xff1a; f狐o貍x 目錄 3.9 高精度算法 一、高精度加法 題目鏈接&#xff1a; 題目描述&#xff1a; 解題思路&#xff1a; 解題代碼&#xff1a; 二、高精度減法 題目鏈接&#xff1a; 題目描述&…

vue 仿deepseek前端開發一個對話界面

后端&#xff1a;調用deepseek的api&#xff0c;所以返回數據格式和deepseek相同 {"model": "DeepSeek-R1-Distill-Qwen-1.5B", "choices": [{"index": 0, "delta": {"role": "assistant", "cont…

SpringMVC(五)攔截器

目錄 攔截器基本概念 一 單個攔截器的執行 1 創建攔截器 2 SpringMVC配置&#xff0c;并指定攔截路徑。 3 運行結果展示&#xff1a; 二 多個攔截器的執行順序 三 攔截器與過濾器的區別 攔截器基本概念 SpringMVC內置攔截器機制&#xff0c;允許在請求被目標方法處理的…

Hive SQL 精進系列:PERCENTILE_APPROX 搞定分位數

目錄 一、引言二、percentile_approx 函數基礎2.1 基本語法參數解釋返回值簡單示例 三、應用場景3.1 數據分析與報告3.2 數據清洗與異常值檢測3.3 性能監控與優化 四、使用注意事項4.1 數據類型要求4.2 精度與性能平衡4.3 空值處理 五、總結 一、引言 百分位數作為一種常用的統…

pytorch快速入門——手寫數字分類GPU加速

&#x1f451;主頁&#xff1a;吾名招財 &#x1f453;簡介&#xff1a;工科學碩&#xff0c;研究方向機器視覺&#xff0c;愛好較廣泛… ?&#x1f4ab;簽名&#xff1a;面朝大海&#xff0c;春暖花開&#xff01; pytorch快速入門——手寫數字分類GPU加速 一、tensor1&#…

【開源免費】基于SpringBoot+Vue.JS電商應用系統(JAVA畢業設計)

本文項目編號 T 242 &#xff0c;文末自助獲取源碼 \color{red}{T242&#xff0c;文末自助獲取源碼} T242&#xff0c;文末自助獲取源碼 目錄 一、系統介紹二、數據庫設計三、配套教程3.1 啟動教程3.2 講解視頻3.3 二次開發教程 四、功能截圖五、文案資料5.1 選題背景5.2 國內…

經歷過的IDEA+Maven+JDK一些困惑

注意事項&#xff1a;由于使用過程中是IDEA綁定好另外2個工具&#xff0c;所以報錯統一都顯示在控制臺&#xff0c;但要思考和分辨到底是IDEA本身問題導致的報錯&#xff0c;還是maven導致的 使用前的配置 編輯期 定義&#xff1a;指的是從open projects開始&#xff0c;到執行…

【推理】大模型ReasonGraph:推理路徑的可視化論文及代碼分析

ReasonGraph:推理路徑的可視化 ReasonGraph demo http://192.168.50.197:5001/ 作者的其他論文 ** ** LLM推理方法的相關工作

學習路之TP6 --重寫vendor目錄下的文件(服務覆蓋command---優點:命令前后一致)

學習路之TP6 --重寫vendor目錄下的文件 一、新建命令文件&#xff1a;二、復制修改&#xff1a;Server.php三、新建服務類&#xff1a;WorkmanService.php四、注冊服務五、運行效果 有需求要重寫vendor\topthink\think-worker\src\command\Server.php 以實現修改代碼 一、新建命…

【藍圖使用】繪制mesh頂點的法線

文章目錄 繪制法線Normal準備工作UE5資源制作藍圖制作 參考 繪制法線Normal 參考[1]打算用藍圖走一遍渲染管線&#xff0c;還是可以的 準備工作 Blender制作一個三個頂點的模型 要不要材質無所謂&#xff0c;就一個三個頂點的mesh即可&#xff0c;參考[2] 找到一個法線貼…

【算法學習之路】10.二叉樹

二叉樹 前言一.簡介二.題目123 前言 我會將一些常用的算法以及對應的題單給寫完&#xff0c;形成一套完整的算法體系&#xff0c;以及大量的各個難度的題目&#xff0c;目前算法也寫了幾篇&#xff0c;題單正在更新&#xff0c;其他的也會陸陸續續的更新&#xff0c;希望大家點…

AI軟件棧:推理框架(二)-Llama CPP1

Llama CPP的主要構造&#xff0c;GGUF和GGML為兩個主要部分&#xff0c;包括模型描述文件和模型參數存儲文件 文章目錄 GGUF構建圖讀取權重 GGUF llama.cpp 的作者 Georgi Gerganov 提出的新一代大模型描述文件 GPT-Generated Unified Format&#xff0c;繼承自GGML&#xff0…

CentOS 7 64 安裝 Docker

前言 在虛擬機中安裝 Docker 是一種常見的測試和開發環境搭建方式。通過在虛擬機上安裝 Docker&#xff0c;可以方便地創建和管理容器化應用&#xff0c;同時避免對宿主機系統造成影響。以下是在 CentOS 7 虛擬機中安裝 Docker 的詳細步驟。 1. 更新系統&#xff08;可以不操作…

Flutter_學習記錄_video_player、chewie 播放視頻

1. video_player 視頻播放 插件地址&#xff1a;https://pub.dev/packages/video_player 添加插件 導入頭文件 import package:video_player/video_player.dart;Android配置&#xff08;iOS不用配置&#xff09; 修改這個文件&#xff1a;/android/app/src/main/AndroidMani…

VSCode通過SSH免密遠程登錄Windows服務器

系列 1.1 VSCode通過SSH遠程登錄Windows服務器 1.2 VSCode通過SSH免密遠程登錄Windows服務器 文章目錄 系列1 準備工作2 本地電腦配置2.1 生成密鑰2.2 VS Code配置密鑰 3. 服務端配置3.1 配置SSH服務器sshd_config3.2 復制公鑰3.3 配置權限&#xff08;常見問題&#xff09;3.…

強大的數據庫DevOps工具:NineData 社區版

本文作者司馬遼太杰&#xff0c; gzh&#xff1a;程序猿讀歷史 在業務快速變化與數據安全日益重要的今天&#xff0c;生產數據庫變更管理、版本控制、數據使用是數據庫領域的核心挑戰之一。傳統的解決方式往往采用郵件或即時通訊工具發起審批流程&#xff0c;再通過堡壘機直連數…

離線服務器ollama新增qwen2:0.5b模型

離線服務器ollama新增qwen2:0.5b模型 Dify集成ollama前面已經介紹過離線服務器CentOS使用的docker安裝的ollama&#xff0c;其中在ollama中已經安裝了deepseek-r1:1.5b。目前的需求是需要再安裝一個qwen2:0.5b的模型&#xff0c;那么如何安裝呢&#xff1f; 1.首先在有網的服…