最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java?MultipartFile文件上傳重命名詳細代碼示例

 更新時間:2024年09月25日 09:35:35   作者:傻猴兒  
在文件上傳功能開發(fā)中,為防止文件重名導(dǎo)致數(shù)據(jù)覆蓋,常見的做法是在文件名前加上UUID或時間戳來區(qū)分,這篇文章主要介紹了java?MultipartFile?multipartFile文件上傳重命名的相關(guān)資料,需要的朋友可以參考下

前言

我們在文件上傳的時候,需要考慮重名覆蓋問題,為邏輯嚴謹,需要在文件上傳的時候,將文件名前方拼接UUID或者時間戳,來區(qū)分同名文件,但因此引出如何修改前端傳給后端的文件名稱。

代碼示例:

這時候需要將這個類型的MultipartFile內(nèi)部將文件名添加UUID,但前端又不太方便處理,由此后端處理方式如下:

String fileSuffix = multipartFile.getOriginalFilename();
//文件重命名
String fileName0 = fileSuffix.substring(0,fileSuffix.lastIndexOf("."));
String fileName1 = fileSuffix.substring(fileSuffix.lastIndexOf(".")+1);
//重命名
String newName = uuid+"_"+fileName0;
//臨時文件
File file=File.createTempFile(newName , "."+fileName1);
multipartFile.transferTo(file);
InputStream inputStream = new FileInputStream(file);
//File轉(zhuǎn)換成MultipartFile
multipartFile = new MockMultipartFile(file.getName(), file.getName(),multipartFile.getContentType(),inputStream);
//程序退出后刪除臨時文件
file.deleteOnExit();

注意:

File file=File.createTempFile(newName , “.”+fileName1);

該方法創(chuàng)建文件的時候,文件名(newName )不能不能少于兩個漢字

補充:

1、引入的依賴

import org.springframework.mock.web.MockMultipartFile;

2、pom依賴

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
        </dependency>

總結(jié)

到此這篇關(guān)于java MultipartFile multipartFile文件上傳重命名的文章就介紹到這了,更多相關(guān)java MultipartFile multipartFile文件上傳重命名內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • JavaWeb禁止瀏覽器緩存當(dāng)前Web頁面的方法

    JavaWeb禁止瀏覽器緩存當(dāng)前Web頁面的方法

    所謂瀏覽器緩存,是指當(dāng)?shù)谝淮卧L問網(wǎng)頁時,瀏覽器會將這些網(wǎng)頁緩存到本地,當(dāng)下一次再訪問這些被緩存的網(wǎng)頁時,瀏覽器就會直接從本地讀取這些網(wǎng)頁的內(nèi)容,而無需再從網(wǎng)絡(luò)上獲取
    2017-11-11
  • Spring?Boot?打包成Jar包運行原理分析

    Spring?Boot?打包成Jar包運行原理分析

    這篇文章主要為大家介紹了Spring?Boot?打包成Jar包運行的原理分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • java 使用線程做的一個簡單的ATM存取款實例代碼

    java 使用線程做的一個簡單的ATM存取款實例代碼

    線程 Thread 類,和 Runable 接口 比較兩者的特點和應(yīng)用領(lǐng)域.可以,直接繼承線程Thread類。該方法編寫簡單,可以直接操作線程,適用于單重繼承情況,因而不能在繼承其他類,下面我們來看一個實例
    2013-08-08
  • Java中的延遲隊列DelayQueue詳細解析

    Java中的延遲隊列DelayQueue詳細解析

    這篇文章主要介紹了Java中的延遲隊列DelayQueue詳細解析,JDK自身支持延遲隊列的數(shù)據(jù)結(jié)構(gòu),其實類:java.util.concurrent.DelayQueue,<BR>我們通過閱讀源碼的方式理解該延遲隊列類的實現(xiàn)過程,需要的朋友可以參考下
    2023-12-12
  • java性能火焰圖的生成實踐

    java性能火焰圖的生成實踐

    文章介紹async-profiler這一Java性能分析工具,可低開銷生成火焰圖,幫助定位CPU飆升、內(nèi)存泄露等問題,涵蓋準備程序、生成數(shù)據(jù)及展示三個核心步驟,適合解決線上性能瓶頸
    2025-07-07
  • 使用SpringBoot3整合Spring AI實現(xiàn)具有記憶功能的AI助手

    使用SpringBoot3整合Spring AI實現(xiàn)具有記憶功能的AI助手

    本文介紹了使用SpringBoot3整合SpringAI和Redis實現(xiàn)一個具有記憶功能的AI助手,項目使用Redis作為存儲介質(zhì),支持用戶級別的會話隔離和30天的對話歷史持久化,詳細介紹了環(huán)境準備、項目初始化、核心配置、功能實現(xiàn)及測試驗證步驟,需要的朋友可以參考下
    2026-04-04
  • 使用Java?Executors創(chuàng)建線程池的9種方法

    使用Java?Executors創(chuàng)建線程池的9種方法

    文章主要介紹了?Java?中Executors類創(chuàng)建線程池的?9?種方法,每種方法都詳細闡述了實現(xiàn)原理、源代碼分析、參數(shù)解釋、實現(xiàn)過程、特性和使用場景,感興趣的小伙伴跟著小編一起來看看吧
    2024-11-11
  • java實現(xiàn)token無感刷新+處理并發(fā)的后端方案

    java實現(xiàn)token無感刷新+處理并發(fā)的后端方案

    在Web應(yīng)用中,Token用于身份驗證和會話管理,但當(dāng)Token過期時,可能會導(dǎo)致用戶在提交表單或進行操作時突然被重定向到登錄頁面,本文就來介紹一下java實現(xiàn)token無感刷新+處理并發(fā)的后端方案,感興趣的可以了解一下
    2024-11-11
  • Java異常處理 Throwable實現(xiàn)方法解析

    Java異常處理 Throwable實現(xiàn)方法解析

    這篇文章主要介紹了Java異常處理 Throwable實現(xiàn)方法解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10
  • java中JSONArray互相轉(zhuǎn)換List的實現(xiàn)

    java中JSONArray互相轉(zhuǎn)換List的實現(xiàn)

    本文主要介紹了java中JSONArray互相轉(zhuǎn)換List的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07

最新評論

分宜县| 巫溪县| 林甸县| 柘荣县| 小金县| 高尔夫| 高尔夫| 绥德县| 泾源县| 子长县| 威海市| 绍兴市| 托里县| 拜城县| 兴宁市| 普陀区| 麻栗坡县| 杭锦后旗| 淮南市| 翼城县| 商水县| 西充县| 滨海县| 南雄市| 理塘县| 东港市| 濮阳市| 获嘉县| 老河口市| 务川| 西乌| 萝北县| 会泽县| 玛多县| 迁安市| 津南区| 神池县| 饶阳县| 化德县| 富平县| 阜阳市|