javascript
java 文件上传 配置_SpringMVCMultipartFilefile文件上传及参数接收
一、form表單屬性中加上enctype="multipart/form-data"
form表單的
二、配置文件中配置MultipartResolver
文件超出限制會在進入controller前拋出異常,在允許范圍內這個配置無影響
三、MultipartFile
接受文件并通過IO二進制流(MultipartFile.getInputStream())輸入到FileOutStream保存文件,然后該干嘛就干嘛
參數接收同MultipartFile 接收一樣。
接受form表單截圖中name為file和id的文件和參數。如下
@RequestMapping(value = "attendee_uploadExcel.do")
@ResponseBody
public void uploadExcel(@RequestParam("file")
MultipartFile?file,?@RequestParam("id")
String?id) throws Exception {
//form表單提交的參數測試為String類型
if (file == null) return ;
String fileName = file.getOriginalFilename();
String path =
getRequest().getServletContext().getRealPath("/upload/excel");
//獲取指定文件或文件夾在工程中真實路徑,getRequest()這個方法是返回一個HttpServletRequest,封裝這個方法為了處理編碼問題
FileOutputStream fos =
FileUtils.openOutputStream(new
File(path+"/"
+fileName));//打開FileOutStrean流
IOUtils.copy(file.getInputStream(),fos);//將MultipartFile?file轉成二進制流并輸入到FileOutStrean
fos.close();//
......
}
四、servlet上傳文件。HttpServletRequest
req強轉成MultipartHttpServletRequest
req后,req.getParameter("id");
HttpServletRequest request;
MultipartHttpServletRequest multipartRequest =
(MultipartHttpServletRequest) request;
MultipartFile file
=?multipartRequest.getFile("file");
String id = multipartRequest.getParameter("id");
String fileName = file.getOriginalFilename();
五、maven配置
添加maven依賴:
commons-fileupload
commons-fileupload
1.2.2
Spring注解配置:
@Bean
public MultipartResolver multipartResolver() throws IOException
{
CommonsMultipartResolvercommonsMultipartResolver=new CommonsMultipartResolver();
commonsMultipartResolver.setUploadTempDir(new
FileSystemResource("fileUpload/temp"));//上傳中臨時文件存放目錄
commonsMultipartResolver.setMaxUploadSize(2097152);//上傳文件的總大小限制,這里設置為2G
commonsMultipartResolver.setDefaultEncoding("UTF-8");//編碼
//commonsMultipartResolver.setResolveLazily();//延遲解析,解析文件的時候再拋異常
//commonsMultipartResolver.setServletContext();
commonsMultipartResolver.setMaxInMemorySize(1024);//緩存大小限制
//commonsMultipartResolver.setMaxUploadSizePerFile();//單個文件大小限制
//commonsMultipartResolver.setPreserveFilename();
return
commonsMultipartResolver;
}
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的java 文件上传 配置_SpringMVCMultipartFilefile文件上传及参数接收的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jquery validate表单验证插
- 下一篇: gradle idea java ssm