今天寫了個(gè)SpringMvc上傳文件的接口 運(yùn)行后報(bào)錯(cuò)
?附上接口代碼
@PostMapping("/upload")
public String handleFileUpload(@RequestPart("file") MultipartFile file) {
try {
// 保存上傳的文件到服務(wù)器
byte[] bytes = file.getBytes();
Path path = Paths.get(Objects.requireNonNull(file.getOriginalFilename()));
Files.write(path, bytes);
} catch (IOException e) {
e.printStackTrace();
return "err";
}
return "success";//只做測試
}
?附上 請求截圖?
?出現(xiàn)這種情況通常有兩種情況:
- @RequestPart("file") 里面的file和前端請求的name="file"的值 不同 (見上圖)
- 沒有配置Spring MVC的文件上傳解析器
很明顯 這里第一種情況不滿足? 解決第二種情況的方法有多種 我采用自定義配置類 (注意加上@Configeration 聲明為配置類)
@Configuration // 聲明為配置類
public class AppConfig {
@Bean // 聲明為 Bean
public CommonsMultipartResolver multipartResolver() {
CommonsMultipartResolver resolver = new CommonsMultipartResolver(); // 創(chuàng)建 CommonsMultipartResolver 實(shí)例
resolver.setMaxUploadSize(10485760); // 設(shè)置最大上傳文件大小為 10 MB
resolver.setDefaultEncoding("UTF-8"); // 設(shè)置默認(rèn)編碼為 UTF-8
return resolver; // 返回創(chuàng)建的實(shí)例
}
}
加入配置類 再次發(fā)送請求
接口正常響應(yīng)文章來源:http://www.zghlxwxcb.cn/news/detail-792277.html
?注意接口不能用@RequestBody 否則會(huì)拋出空指針異常文章來源地址http://www.zghlxwxcb.cn/news/detail-792277.html
到了這里,關(guān)于Spring Mvc上傳文件報(bào)錯(cuò)MissingServletRequestPartException:Required request part ‘file‘ is not present兩種解決方案的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!