日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

SpringBoot實現本地存儲文件上傳及提供HTTP訪問服務的方法

瀏覽:13日期:2023-05-03 09:45:44

筆者計劃為大家介紹分布式文件系統,用于存儲應用的圖片、word、excel、pdf等文件。在開始介紹分布式文件系統之前,為大家介紹一下使用本機存儲來存放文件資源。二者的核心實現過程是一樣的:

上傳文件,保存文件(本節是本地磁盤) 返回文件HTTP訪問服務路徑給前端,進行上傳之后的效果展示

一、復習

服務端接收上傳的目的是提供文件的訪問服務,那么對于SpringBoot而言,有哪些可以提供文件訪問的靜態資源目錄呢?

classpath:/META-INF/resources/ , classpath:/static/ , classpath:/public/ , classpath:/resources/

這是之前我們為大家介紹的內容,從這里看出這里的靜態資源都在classpath下。那么就出現問題:

應用的文件資源不能和項目代碼分開存儲(你見過往github上傳代碼,還附帶項目文件數據的么?) 項目打包困難,當上傳的文件越來越多,項目的打包jar越來越大。 代碼與文件數據不能分開存儲,就意味著文件數據的備份將變得復雜

二、文件上傳目錄自定義配置

怎么解決上述問題?別忘記了spring boot 為我們提供了使用spring.resources.static-locations配置自定義靜態文件的位置。

web: upload-path: D:/data/spring: resources: static-locations: classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,file:${web.upload-path} 配置web.upload-path為與項目代碼分離的靜態資源路徑,即:文件上傳保存根路徑 配置spring.resources.static-locations,除了帶上Spring Boot默認的靜態資源路徑之外,加上file:${web.upload-path}指向外部的文件資源上傳路徑。該路徑下的靜態資源可以直接對外提供HTTP訪問服務。

三、文件上傳的Controller實現

詳情看代碼注釋

@RestControllerpublic class FileUploadController { //綁定文件上傳路徑到uploadPath @Value('${web.upload-path}') private String uploadPath; SimpleDateFormat sdf = new SimpleDateFormat('yyyy/MM/dd/'); @PostMapping('/upload') public String upload(MultipartFile uploadFile, HttpServletRequest request) { // 在 uploadPath 文件夾中通過日期對上傳的文件歸類保存 // 比如:/2019/06/06/cf13891e-4b95-4000-81eb-b6d70ae44930.png String format = sdf.format(new Date()); File folder = new File(uploadPath + format); if (!folder.isDirectory()) { folder.mkdirs(); } // 對上傳的文件重命名,避免文件重名 String oldName = uploadFile.getOriginalFilename(); String newName = UUID.randomUUID().toString() + oldName.substring(oldName.lastIndexOf('.'), oldName.length()); try { // 文件保存 uploadFile.transferTo(new File(folder, newName)); // 返回上傳文件的訪問路徑 String filePath = request.getScheme() + '://' + request.getServerName() + ':' + request.getServerPort() + format + newName; return filePath; } catch (IOException e) { throw new CustomException(CustomExceptionType.SYSTEM_ERROR); } }}

四、寫一個模擬的文件上傳頁面,進行測試

把該upload.html文件放到classpath:public目錄下,對外提供訪問。

<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <title>Title</title></head><body><form action='/upload' method='post' enctype='multipart/form-data'> <input type='file' name='uploadFile' value='請選擇上傳文件'> <input type='submit' value='保存'></form></body></html>

訪問測試、點擊“選擇文件”,之后保存

SpringBoot實現本地存儲文件上傳及提供HTTP訪問服務的方法

文件被保存到服務端的web.upload-path指定的資源目錄下

SpringBoot實現本地存儲文件上傳及提供HTTP訪問服務的方法

瀏覽器端響應結果如下,返回一個文件HTTP訪問路徑:

SpringBoot實現本地存儲文件上傳及提供HTTP訪問服務的方法

使用該HTTP訪問路徑,在瀏覽器端訪問效果如下。證明我們的文件已經成功上傳到服務端,以后需要訪問該圖片就通過這個HTTP URL就可以了。

SpringBoot實現本地存儲文件上傳及提供HTTP訪問服務的方法

到此這篇關于SpringBoot實現本地存儲文件上傳及提供HTTP訪問服務的文章就介紹到這了,更多相關SpringBoot實現文件上傳和訪問內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Spring
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美亚洲激情| 美女视频黄久久| 蜜桃成人精品| 麻豆视频在线观看免费网站黄| 精品亚洲成人| 美女视频一区在线观看| 国产精品99久久免费| 青青伊人久久| 国产日韩中文在线中文字幕| 亚洲精品日本| 日本视频中文字幕一区二区三区| 日韩在线观看一区二区三区| 日韩福利视频一区| 欧美精品中文| 美女视频网站久久| xxxxx性欧美特大| 久久精品青草| 午夜欧美精品久久久久久久| 免费一级片91| 日韩av午夜在线观看| 鲁大师精品99久久久| 中文在线中文资源| 999国产精品永久免费视频app| 欧美精品一区二区久久| 狠狠色狠狠色综合日日tαg| 亚洲专区在线| 日本a级不卡| 美女视频一区在线观看| 日韩欧美少妇| 亚洲欧美久久| 国产免费av一区二区三区| 成人影视亚洲图片在线| 欧美日韩国产一区二区三区不卡| 中文欧美日韩| 日韩超碰人人爽人人做人人添| 美女久久久久久 | 最新国产精品| 欧美精品影院| 日产精品一区二区| 极品裸体白嫩激情啪啪国产精品| 性欧美长视频| 国产精品巨作av| 日本国产精品| 日韩精品一级中文字幕精品视频免费观看| 日韩一区网站| 国产福利91精品一区二区| 欧美一区二区三区高清视频| 亚洲精品一二三**| 欧美一级一区| 日韩大片免费观看| 综合色一区二区| 国内精品伊人| 久久都是精品| 精品国产精品国产偷麻豆| 色婷婷精品视频| 日本亚洲视频在线| 97精品国产| 亚洲精品无吗| 日本免费久久| 日韩有码av| 亚洲午夜黄色| 国产精品片aa在线观看| 日韩午夜一区| 国产精品国产三级在线观看| 午夜欧美理论片| 你懂的国产精品永久在线| 日韩视频久久| 国产suv精品一区二区四区视频 | 国产精品久久久久蜜臀 | 少妇精品久久久一区二区| 精品国产网站| 亚洲aa在线| 久久久777| 亚洲精品综合| 日韩一区三区| 国产欧美日韩视频在线| 午夜日韩av| 久久中文在线| 蜜臀久久99精品久久久久宅男 | 欧美永久精品| 99国产精品视频免费观看一公开 | 国产精品扒开腿做爽爽爽软件| 欧美精品一卡| 你懂的亚洲视频| 在线观看一区| 国产精品av一区二区| 精品久久中文| 日本在线视频一区二区| 欧美成人亚洲| 精品久久久网| 91午夜精品| 视频一区二区三区在线| 亚洲1234区| 九九久久国产| 久久狠狠亚洲综合| 久久一区二区中文字幕| 午夜视频一区二区在线观看| 国产v日韩v欧美v| 亚洲大全视频| 亚洲三级国产| 在线精品视频在线观看高清| 国产一区丝袜| 国产精品亚洲欧美一级在线| av亚洲免费| 精品国产黄a∨片高清在线| 亚洲视频二区| 久久久久午夜电影| 欧美日韩在线观看首页| 国产欧美日韩在线观看视频| 亚洲欧美日韩在线观看a三区| 最新国产拍偷乱拍精品| 91tv亚洲精品香蕉国产一区| 精品久久在线| 国产美女久久| 国产女人18毛片水真多18精品| 亚洲综合精品四区| 久久狠狠婷婷| 成人午夜网址| 99国产精品私拍| 国产激情久久| 免费福利视频一区二区三区| 日日夜夜免费精品| 日本欧美在线| 免费在线看一区| 久久精品亚洲欧美日韩精品中文字幕| 欧美成人aaa| 欧美国产专区| 色狠狠一区二区三区| 成人台湾亚洲精品一区二区| 久久av综合| 精品一区二区三区中文字幕| 国产精品视频一区二区三区综合| 国产欧美精品久久| 国产欧美高清| 美女视频一区在线观看| 在线视频观看日韩| 亚洲在线观看| 宅男噜噜噜66国产日韩在线观看| 欧美精品一卡| 精品丝袜在线| 亚洲在线网站| 亚洲精品电影| 午夜久久av| 日本不卡中文字幕| 日韩精品五月天| 欧美日韩一视频区二区| 国产精品2区| 国产一区调教| 久久天堂av| 国产视频久久| 日本一区福利在线| 国产精品国码视频| 国产一区二区三区四区| 亚洲h色精品| 国产亚洲毛片| 日韩精品一区二区三区av| 国产精品色婷婷在线观看| 91免费精品| japanese国产精品| 亚洲bt欧美bt精品777| 国产精品最新| 日韩欧美一区二区三区免费看| 一区二区三区视频免费观看| 亚洲一区日韩| 日韩国产在线一| 欧美国产精品| 国产在线|日韩| 男人的天堂久久精品| 国产日产一区| 91嫩草亚洲精品| 亚洲精品1区| 欧美一区在线观看视频| 欧美www视频在线观看| 久久久影院免费| 亚洲丝袜啪啪| 你懂的网址国产 欧美| 中文字幕系列一区| 在线免费观看亚洲| 久久精品三级| 在线一区电影| 国产精品亚洲综合久久| 国产自产自拍视频在线观看| 伊人久久亚洲影院| 91精品国产自产在线丝袜啪| 日本欧美国产| 久热re这里精品视频在线6| 国产精品一区二区av交换| 久久久水蜜桃av免费网站| 男女精品网站| 麻豆91小视频| 蜜臀av性久久久久蜜臀aⅴ四虎| 国产极品久久久久久久久波多结野 | 韩国久久久久久| 亚洲精品观看| 精品国产18久久久久久二百| 国产精品外国| 精品成人18| 日韩一区二区三区精品视频第3页| 高潮一区二区| 亚洲视频二区|