国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

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

文件上傳SpringBoot后端MultipartFile參數報空問題的解決辦法

瀏覽:2日期:2023-04-12 11:10:03

最近寫了一個文件上傳的小demo,就是簡單的前端html頁面,后端controller接收,但是后端一直報錯文件為null,看了很多文章,有說spring-boot自帶的org.springframework.web.multipart.MultipartFile和Multipart沖突了,要在啟動類中加入@EnableAutoConfiguration(exclue={MultipartAutoConfiguration.class}),有說要在MultipartFile參數前加上@RequestParam(“file”)以表明該參數類型是文件類型,還有說是前端表單沒有設置enctype=“multipart/form-data”,參照上面方法我還是沒有解決問題,后來更換了spring-boot版本就好了,代碼如下:

1、pom.xml(注意我這里用的是2.0.4版本)

<?xml version='1.0' encoding='UTF-8'?><project xmlns='http://maven.apache.org/POM/4.0.0' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd'> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.4.RELEASE</version> </parent> <groupId>org.sang</groupId> <artifactId>chapter01</artifactId> <version>1.0-SNAPSHOT</version> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> <build> <plugins> <plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build></project>

2、upload.html頁面

<!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>

3、后端controller

import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RestController;import org.springframework.web.multipart.MultipartFile;import javax.servlet.http.HttpServletRequest;import java.io.File;import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Date;import java.util.UUID;@RestControllerpublic class FileUploadController { SimpleDateFormat sdf = new SimpleDateFormat('yyyy/MM/dd'); @PostMapping('upload') public String upload(MultipartFile uploadFile, HttpServletRequest req){ String realPath = req.getSession().getServletContext().getRealPath('/uploadFile'); String format = sdf.format(new Date()); File folder = new File(realPath+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 path = req.getScheme()+'://'+req.getServerName()+':'+req.getServerPort()+'/uploadFile/'+format+newName; return path; }catch (IOException e){ e.printStackTrace(); } return '上傳失敗'; }}

到此這篇關于文件上傳SpringBoot后端MultipartFile參數報空問題的解決辦法的文章就介紹到這了,更多相關SpringBoot MultipartFile參數報空 內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Spring
相關文章:
主站蜘蛛池模板: 和田县| 安多县| 阿克陶县| 措勤县| 雅江县| 额济纳旗| 和硕县| 吴川市| 酒泉市| 郧西县| 桐柏县| 云安县| 察雅县| 松潘县| 兴山县| 册亨县| 德阳市| 崇阳县| 高碑店市| 普兰县| 双鸭山市| 鄂托克前旗| 比如县| 贡山| 南靖县| 海原县| 淮滨县| 长武县| 将乐县| 吉首市| 汤阴县| 大理市| 淳化县| 剑河县| 丰都县| 广水市| 长寿区| 绍兴市| 原平市| 永福县| 乌兰察布市|