使用MultipartFile來上傳單個(gè)及多個(gè)文件代碼示例
一、MultipartFile上傳單個(gè)文件代碼示例
1.1 MultipartFile上傳單個(gè)文件,不包含其它參數(shù)
控制層代碼如下:
/** * 1、上傳單個(gè)文件,不包含其它參數(shù) * */ @PostMapping( "/uploadFile1") public String uploadFile1(@RequestParam(value = "file") MultipartFile multipartFile) { String fileName = multipartFile.getOriginalFilename(); return "文件名稱:"+fileName; }
postman接口調(diào)用, Headers里需要添加key: Content-Type , value:multipart/form-data;
如下圖:
接口類型是Post,body請(qǐng)求體里選擇from-data這種方式,文件key的格式設(shè)置為File類型
如下圖:
調(diào)用接口,返回了文件名稱
如下圖:
1.2 MultipartFile上傳單個(gè)文件,包含其它參數(shù)
控制層代碼如下:
/** * 2、上傳單個(gè)文件,包含其它參數(shù) * */ @PostMapping( "/uploadFile2") public String uploadFile2(@RequestParam(value = "file") MultipartFile multipartFile,String username){ String fileName = multipartFile.getOriginalFilename(); return "文件名稱:"+fileName+ "----username: " + username ; }
postman接口調(diào)用, Headers里需要添加key: Content-Type , value:multipart/form-data;
如下圖:
接口類型是Post,body請(qǐng)求體里選擇from-data這種方式,文件key的格式設(shè)置為file類型,參數(shù)key的值為Text類型
如下圖:
調(diào)用接口,返回了文件名稱及參數(shù)的值
如下圖:
1.3 MultipartFile上傳單個(gè)文件,包含其它請(qǐng)求實(shí)體
控制層代碼如下:
/** * 3、上傳單個(gè)文件,包含其它請(qǐng)求實(shí)體 * */ @PostMapping( "/uploadFile3") public String uploadFile3(@RequestParam(value = "file") MultipartFile multipartFile,Users users){ String fileName = multipartFile.getOriginalFilename(); return "文件名稱:"+fileName+ "----users: " + users.toString() ; }
postman接口調(diào)用, Headers里需要添加key: Content-Type , value:multipart/form-data;
如下圖:
接口類型是Post,body請(qǐng)求體里選擇from-data這種方式,文件key的格式設(shè)置為file類型,請(qǐng)求實(shí)體參數(shù)key的值為Text類型
如下圖:
調(diào)用接口,返回了文件名稱及請(qǐng)求實(shí)體
如下圖:
二、MultipartFile上傳多個(gè)文件代碼示例
2.1 MultipartFile上傳多個(gè)文件,不包含其它參數(shù)
控制層代碼如下:
/** * 4、上傳多個(gè)文件,不包含其它參數(shù) * */ @PostMapping( "/uploadFile4") public JSONObject uploadFile4(@RequestParam(value = "file") MultipartFile[] multipartFile) { JSONObject jsonObject = new JSONObject(); for(int i = 0; i < multipartFile.length; i++) { jsonObject.put("fileName" + i, multipartFile[i].getOriginalFilename()); } return jsonObject; }
postman接口調(diào)用, Headers里需要添加key: Content-Type , value:multipart/form-data;
如下圖:
接口類型是Post,body請(qǐng)求體里選擇from-data這種方式,文件key的格式設(shè)置為file類型
如下圖:
調(diào)用接口,返回了多個(gè)文件名稱
如下圖:
2.2 MultipartFile上傳多個(gè)文件,包含其它參數(shù)
控制層代碼如下:
/** * 5、上傳多個(gè)文件,包含其它參數(shù) * */ @PostMapping( "/uploadFile5") public JSONObject uploadFile5(@RequestParam(value = "file") MultipartFile[] multipartFile,String username,String age) { JSONObject jsonObject = new JSONObject(); for(int i = 0; i < multipartFile.length; i++) { jsonObject.put("fileName" + i, multipartFile[i].getOriginalFilename()); } jsonObject.put("username", username); jsonObject.put("age", age); return jsonObject; }
postman接口調(diào)用, Headers里需要添加key: Content-Type , value:multipart/form-data;
如下圖:
接口類型是Post,body請(qǐng)求體里選擇from-data這種方式,文件key的格式設(shè)置為file類型,參數(shù)key的值為Text類型
如下圖:
調(diào)用接口,返回了多個(gè)文件名稱及參數(shù)
如下圖:
2.3 MultipartFile上傳多個(gè)文件,包含其它請(qǐng)求體
控制層代碼如下:
/** * 6、上傳多個(gè)文件,包含其它請(qǐng)求體 * */ @PostMapping( "/uploadFile6") public JSONObject uploadFile6(@RequestParam(value = "file") MultipartFile[] multipartFile,Users users) { JSONObject jsonObject = new JSONObject(); for(int i = 0; i < multipartFile.length; i++) { jsonObject.put("fileName" + i, multipartFile[i].getOriginalFilename()); } jsonObject.put("users", users.toString()); return jsonObject; }
postman接口調(diào)用, Headers里需要添加key: Content-Type , value:multipart/form-data;
如下圖:
接口類型是Post,body請(qǐng)求體里選擇from-data這種方式,文件key的格式設(shè)置為file類型,參數(shù)key的值為Text類型
如下圖:
調(diào)用接口,返回了多個(gè)文件名稱及請(qǐng)求體
如下圖:
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java動(dòng)態(tài)驗(yàn)證碼單線設(shè)計(jì)的兩種方法
這篇文章主要介紹了Java動(dòng)態(tài)驗(yàn)證碼單線設(shè)計(jì)的兩種方法,需要的朋友可以參考下2018-07-07Java?中很好用的數(shù)據(jù)結(jié)構(gòu)EnumSet
這篇文章主要介紹了Java?中很好用的數(shù)據(jù)結(jié)構(gòu)EnumSet,EnumMap即屬于一個(gè)Map,下文圍繞主題展開詳細(xì)內(nèi)容,需要的小伙伴可以參考參考一下2022-05-05SpringBoot最簡(jiǎn)單的定時(shí)任務(wù)@Scheduler的使用及解讀
這篇文章主要介紹了SpringBoot最簡(jiǎn)單的定時(shí)任務(wù)@Scheduler的使用及解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-03-03詳解基于MybatisPlus兩步實(shí)現(xiàn)多租戶方案
這篇文章主要介紹了詳解基于MybatisPlus兩步實(shí)現(xiàn)多租戶方案,本文分兩步,通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04MyBatisPlus中批量插入之如何通過開啟rewriteBatchedStatements=true
這篇文章主要介紹了MyBatisPlus中批量插入之如何通過開啟rewriteBatchedStatements=true問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-03-03方法參數(shù)屬性params,@PathVariable和@RequestParam用法及區(qū)別
這篇文章主要介紹了方法參數(shù)屬性params,@PathVariable和@RequestParam用法及區(qū)別說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10詳解IDEA 中使用Maven創(chuàng)建項(xiàng)目常見錯(cuò)誤和使用技巧(推薦)
這篇文章主要介紹了詳解IDEA 中使用Maven創(chuàng)建項(xiàng)目常見錯(cuò)誤和使用技巧(推薦),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07