国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

MultipartFile實現(xiàn)文件上傳功能

這篇具有很好參考價值的文章主要介紹了MultipartFile實現(xiàn)文件上傳功能。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

MultipartFile是spring類型,代表HTML中form data方式上傳的文件,包含二進(jìn)制數(shù)據(jù)+文件名稱。在文件上傳這方面能幫助我們快速簡潔實現(xiàn)。

使用

1、yml配置文件

spring:
  servlet:
    multipart:
      max-file-size: 10MB     #單個最大文件大小,默認(rèn)是1MB
      max-request-size: 100MB   #總請求文件大小

2、API介紹

	multipartFile.getContentType()//在控制臺打印文件的類型
	multipartFile.getName()//返回文件的名稱
	multipartFile.getOriginalFilename()//返回文件的原文件名
	multipartFile.getSize() //單位為字節(jié)
	multipartFile.getInputStream() //文件轉(zhuǎn)換為輸入流
	multipartFile.transferTo(new File("D:/"));
		/*上傳的文件需要保存的路徑和文件名稱,
		  本質(zhì)上還是使用了流,只不過是封裝了步驟,相當(dāng)于:
			File file = new File("D:/");
	        file.createNewFile();
	        FileOutputStream stream = new FileOutputStream(file);
	        stream.write(multipartFile.getBytes());
	        stream.close();
	    */

3、文件上傳示例

@RestController
@Slf4j
public class UploadTest {

    @RequestMapping("/upload")
    public String upLoad(@RequestPart("file") MultipartFile multipartFile){
        log.info("文件上傳開始");
        log.info("文件{}",multipartFile.getOriginalFilename());
        
        if (!multipartFile.isEmpty()){
            try {
                //上傳的文件需要保存的路徑和文件名稱,路徑需要存在,否則報錯
                multipartFile.transferTo(new File("D:/"++multipartFile.getOriginalFilename()));
            } catch (IllegalStateException | IOException e){
                e.printStackTrace();
                return "上傳失敗";
            }
        } else {
            return "請上傳文件";
        }
        return "上傳成功";
    }
}

注意:

@RequestPart("file")主要用來處理content-type為 multipart/form-data 或 multipart/mixed stream 發(fā)起的請求,可以獲取請求中的參數(shù)。

因此在此處,前端上傳文件時,key為file,value為文件。

4、postman測試

由于本人只會后端不會做前端,懶得查資料寫前端上傳文件功能,就使用postman進(jìn)行測試。

1、將請求方式改為post。

2、Headers中設(shè)置設(shè)置key=Content-Type,value=multipart/form-data(默認(rèn)已設(shè)置)。

multipartfile文件上傳,java,spring,postman

3、在Body中選擇form-data,選擇File格式,KEY填寫在后端代碼中編寫的@RequestPart(“file”)中的file,value選擇你想要上傳的文件。
multipartfile文件上傳,java,spring,postman
4、點擊send即可實現(xiàn)上傳功能。

文件下載

既然文件上傳功能有了,就在此介紹一下如何實現(xiàn)文件下載功能。文章來源地址http://www.zghlxwxcb.cn/news/detail-599006.html

@RestController
public class DownTest {

    @RequestMapping("/download")
    public ResponseEntity<Object> download() throws IOException {
        //提供下載的文件的路徑
        FileSystemResource file = new FileSystemResource("D:\\cloud/pom.xml");

        HttpHeaders headers = new HttpHeaders();
        headers.add("Cache-Control", "no-cache, no-store, must-revalidate");
        //這里定制下載文件的名稱
        headers.add("Content-Disposition", String.format("attachment; filename=\"%s\"", file.getFilename()));
        headers.add("Pragma", "no-cache");
        headers.add("Expires", "0");

        return ResponseEntity.ok()
                .headers(headers)
                .contentLength(file.contentLength())
                .contentType(MediaType.parseMediaType("application/octet-stream"))//以二進(jìn)制流的形式返回
                .body(new InputStreamResource(file.getInputStream()));
    }
}

到了這里,關(guān)于MultipartFile實現(xiàn)文件上傳功能的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Spring Cloud Feign MultipartFile文件上傳踩坑之路(包含前端文件上傳請求、后端文件保存到aliyun-oss文件服務(wù)器)

    Spring Cloud Feign MultipartFile文件上傳踩坑之路(包含前端文件上傳請求、后端文件保存到aliyun-oss文件服務(wù)器)

    文件上傳組件用的是ant-design的a-upload組件,我的界面如下所示: 文件上傳請求API: FileUtils.js 需要注意的只有FileUtils.js定義的uploadApi請求函數(shù),其中 URL 為后端請求接口(“/imageConvert/upload”),文件上傳方法必須定義為 POST ,在 headers 加入’Content-type’: ‘multipart/form-data’,后端

    2024年02月12日
    瀏覽(21)
  • java MultipartFile+vue+element 批量上傳文件、圖片,與普通數(shù)據(jù)同時提交保存才上傳到后端

    java MultipartFile+vue+element 批量上傳文件、圖片,與普通數(shù)據(jù)同時提交保存才上傳到后端

    文件上傳項目可參考:點擊預(yù)覽 1.最簡單也是最普遍的做法是form表單提交,其實前端提交到后端也是難以離開form表單提交, 一般有兩種方式來處理文件、圖片上傳: 先上傳,獲取返回路徑,再整個表單提交后端保存; 普通數(shù)據(jù)與文件圖片同時提交后端,由后端處理 優(yōu)點比

    2024年02月03日
    瀏覽(20)
  • Postman本地測試上傳MultipartFile文件接口

    Postman本地測試上傳MultipartFile文件接口

    在請求Body中選擇form-data傳輸類型,填寫后端file參數(shù)名稱,并將參數(shù)設(shè)置為File類型,這時value輸入框?qū)⒆兂晌募x擇框。 如果此時發(fā)送請求給后端,會返回報錯request is not a multipart request. 我們還需要將數(shù)據(jù)傳輸類型Content-Type設(shè)置為multipart/form-data.

    2024年02月12日
    瀏覽(23)
  • 批量上傳文件,以input上傳文件,后端以List<MultipartFile>類型接收

    批量上傳文件,以input上傳文件,后端以List<MultipartFile>類型接收

    最近公司要求要做一個批量上傳文件的功能,以往做的導(dǎo)入Excel表格、上傳圖片都是上傳一個文件的,此次在開發(fā)的過程中著實讓我犯了難,尤其是前后端對接的時候,這里做個記錄。 后端接口是這樣的,跟單個文件上傳相比就是將MultipartFile類型的數(shù)據(jù)變成了集合,這個Mu

    2024年02月07日
    瀏覽(16)
  • MultipartFile上傳至服務(wù)器,文件名稱中文亂碼問題

    MultipartFile上傳至服務(wù)器,文件名稱中文亂碼問題

    1.首先查看服務(wù)器是否設(shè)置為了zh_CN.UTF-8 輸入命令:locale ?不是則,進(jìn)行查看服務(wù)器上是否有zh_CN.UTF-8 查看所有可以使用的字符編碼集 輸入命令:locale -a ?如果沒有可用的zh_CN.UTF-8 則進(jìn)行安裝: CentOS命令:yum install kde-l10n-Chinese -y? ubuntu命令:sudo apt-get install language-pack-zh-ha

    2024年02月10日
    瀏覽(26)
  • SpringBoot如何使用MultipartFile進(jìn)行文件上傳保存到服務(wù)器本地

    之前一直都是用的別人封裝好的文件上傳方法,這次想自己寫一個特別簡單的,文件上傳方法,非常適合新手觀看… 首先需要Springboot需要有Web依賴,就是下面這個依賴 依賴導(dǎo)完了,下面就直接是代碼,大家看一下 到這里文件上傳的解釋都在代碼里面,下面如果報文件過大的報錯還需

    2024年02月13日
    瀏覽(31)
  • MultipartFile類型接收上傳文件報出的UncheckedIOException以及刪除tomcat臨時文件失敗源碼探索

    MultipartFile類型接收上傳文件報出的UncheckedIOException以及刪除tomcat臨時文件失敗源碼探索

    因為需要分析數(shù)據(jù),待處理excel文件的數(shù)據(jù)行數(shù)太大,手動太累,花半小時寫了一個定制的數(shù)據(jù)入庫工具,改成了通用的,整個項目中的萬級別數(shù)據(jù)都在工具上分析,寫SQL進(jìn)行分析,但是遇到很疑惑的問題,文件上傳結(jié)束收流時,tomcat的DisFileItem類的delete方法會自動調(diào)用,但是

    2024年02月15日
    瀏覽(18)
  • 實現(xiàn)并解決微服務(wù)間OpenFeign轉(zhuǎn)發(fā)文件格式MultipartFile

    實現(xiàn)并解決微服務(wù)間OpenFeign轉(zhuǎn)發(fā)文件格式MultipartFile

    使用openfeign轉(zhuǎn)發(fā)MultipartFile類型的文件時出現(xiàn)了下面的錯誤。 分析原因后發(fā)現(xiàn),請求中并沒有正確設(shè)置請求頭部中 Content-Type 為 multipart/form-data 的類型。 multipart/form-data 是一種 HTTP 請求的內(nèi)容類型(Content-Type),它被設(shè)計用來支持文件上傳以及提交表單數(shù)據(jù)。 對于文件格式,

    2024年01月24日
    瀏覽(13)
  • 【使用multipart/form-data方式傳遞MultipartFile參數(shù),實現(xiàn)服務(wù)間文件的傳遞】

    目錄 一、代碼實現(xiàn) 二、MultipartFile工具類 三、HttpClient使用 四、參考鏈接 一、代碼實現(xiàn) 1、A服務(wù)接收前端上傳文件并發(fā)送至B服務(wù) 引入依賴 使用MultipartFile接收前端文件 調(diào)取第三方接口,發(fā)送 MultipartFile 文件 2、B服務(wù)接收文件 二、MultipartFile工具類 簡介:MultipartFile是SpringMV

    2024年02月12日
    瀏覽(19)
  • Spring: MultipartFile和File的區(qū)別

    MultipartFile 和 File 是用于處理文件上傳的兩種不同類型,主要在不同的編程環(huán)墨境中使用。 File 是 Java 標(biāo)準(zhǔn)庫中的類,用于表示文件或目錄的抽象路徑名。 它通常用于在 Java 程序中對本地文件系統(tǒng)中的文件進(jìn)行操作,比如創(chuàng)建文件、讀取文件內(nèi)容、刪除文件等。 File 類并不直

    2024年02月21日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包