欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java中將MultipartFile和File互轉(zhuǎn)的方法詳解

 更新時(shí)間:2023年10月31日 10:54:00   作者:程序員老J  
我們在開發(fā)過程中經(jīng)常需要接收前端傳來的文件,通常需要處理MultipartFile格式的文件,今天來介紹一下MultipartFile和File怎么進(jìn)行優(yōu)雅的互轉(zhuǎn),需要的朋友可以參考下

前言

首先來區(qū)別一下MultipartFile和File:

  • MultipartFile是 Spring 框架的一部分,F(xiàn)ile是 Java 標(biāo)準(zhǔn)庫的一部分。
  • MultipartFile主要用于接收上傳的文件,F(xiàn)ile主要用于操作系統(tǒng)文件。

MultipartFile轉(zhuǎn)換為File

使用 transferTo

這是一種最簡單的方法,使用MultipartFile自帶的transferTo 方法將MultipartFile轉(zhuǎn)換為File,這里通過上傳表單文件,將MultipartFile轉(zhuǎn)換為File格式,然后輸出到特定的路徑,具體寫法如下。

使用 FileOutputStream

這是最常用的一種方法,使用 FileOutputStream 可以將字節(jié)寫入文件。具體寫法如下。

使用 Java NIO

Java NIO 提供了文件復(fù)制的方法。具體寫法如下。

File裝換為MultipartFile

從File轉(zhuǎn)換為MultipartFile 通常在測試或模擬場景中使用,生產(chǎn)環(huán)境一般不這么用,這里只介紹一種最常用的方法。

使用 MockMultipartFile

在轉(zhuǎn)換之前先確保引入了spring-test 依賴(以Maven舉例)

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

通過獲得File文件的名稱、mime類型以及內(nèi)容將其轉(zhuǎn)換為MultipartFile格式。具體寫法如下。

以上就是Java中將MultipartFile和File互轉(zhuǎn)的方法詳解的詳細(xì)內(nèi)容,更多關(guān)于Java MultipartFile和File互轉(zhuǎn)的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • kibana中ES修改某個(gè)字段類型問題小結(jié)

    kibana中ES修改某個(gè)字段類型問題小結(jié)

    這篇文章主要介紹了kibana中ES修改某個(gè)字段類型問題,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • Spring切入點(diǎn)表達(dá)式配置過程圖解

    Spring切入點(diǎn)表達(dá)式配置過程圖解

    這篇文章主要介紹了Spring切入點(diǎn)表達(dá)式配置過程圖解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • 淺析Java中對象的創(chuàng)建與對象的數(shù)據(jù)類型轉(zhuǎn)換

    淺析Java中對象的創(chuàng)建與對象的數(shù)據(jù)類型轉(zhuǎn)換

    這篇文章主要介紹了Java中對象的創(chuàng)建與對象的數(shù)據(jù)類型轉(zhuǎn)換,是Java入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下
    2016-01-01
  • 設(shè)置tomcat啟用gzip壓縮的具體操作方法

    設(shè)置tomcat啟用gzip壓縮的具體操作方法

    如果發(fā)現(xiàn)內(nèi)容沒有被壓縮,可以考慮調(diào)整compressionMinSize大小,如果請求資源小于這個(gè)數(shù)值,則不會啟用壓縮
    2013-08-08
  • SpringBoot中SmartLifecycle的使用解析

    SpringBoot中SmartLifecycle的使用解析

    這篇文章主要介紹了SpringBoot中SmartLifecycle的使用解析,SmartLifecycle是一個(gè)擴(kuò)展了Lifecycle接口,可以跟蹤spring容器ApplicationContext刷新或者關(guān)閉的接口,實(shí)現(xiàn)該接口的實(shí)現(xiàn)類有特定的執(zhí)行順序,需要的朋友可以參考下
    2023-11-11
  • Java之 TreeSet的詳細(xì)使用說明

    Java之 TreeSet的詳細(xì)使用說明

    這篇文章主要介紹了Java之 TreeSet的詳細(xì)使用說明,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Java的三種代理模式簡述

    Java的三種代理模式簡述

    這篇文章主要簡述Java的三種代理模式,java的代理模式主要包括靜態(tài)代理、動(dòng)態(tài)代理、Cglib代理,感興趣的小伙伴可以參考下面文章的具體內(nèi)容
    2021-09-09
  • 詳解spring cloud feign踩坑記錄

    詳解spring cloud feign踩坑記錄

    這篇文章主要介紹了spring cloud feign踩坑記錄,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-06-06
  • Java排列組合字符串的方法

    Java排列組合字符串的方法

    這篇文章主要介紹了Java排列組合字符串的方法
    2018-02-02
  • Java中的Optional處理方法

    Java中的Optional處理方法

    在我們?nèi)粘5拈_發(fā)中,我們經(jīng)常會遇到?NullPointerException,如何才能優(yōu)雅的處理NPE?這里告訴大家一個(gè)較為流行的方法,這篇文章主要介紹了Java中的Optional處理方法,需要的朋友可以參考下
    2022-09-09

最新評論