@Bean
public CommonsMultipartResolver multipart(){
CommonsMultipartResolver commonsMultipartResolver = new CommonsMultipartResolver();
commonsMultipartResolver.setMaxUploadSize(1024*1024*100);
commonsMultipartResolver.setDefaultEncoding("utf-8");
commonsMultipartResolver.setResolveLazily(true);
return commonsMultipartResolver;
}
@Bean
public MultipartConfigElement multipartConfigElement() {
MultipartConfigFactory factory = new MultipartConfigFactory();
// 单个文件最大
factory.setMaxFileSize("500MB"); //KB,MB
/// 设置总上传数据总大小
factory.setMaxRequestSize("500MB");
return factory.createMultipartConfig();
}
@RequestMapping(value = "/uploadFile", method = RequestMethod.POST)
public ResultInfo uploadIcon(MultipartFile file, HttpServletRequest request, HttpServletResponse response) {
InputStream input = null;
try {
if (file == null) {
logger.info("file is null");
return new ResultInfo(ResponseUtil.param_error_code,"参数错误");
}
String contentType = file.getContentType();
logger.info("upload file ContentType: " + contentType);
double fileSize = file.getSize() / 1024 / 1024;
if (fileSize > 50) {
return new ResultInfo(ResponseUtil.faile_code,"上传文件过大,无法处理,请重新上传");
}
input = file.getInputStream();
} catch (Exception e) {
logger.error("uploadIcon fail", e);
return new ResultInfo(ResponseUtil.faile_code, "上传异常");
} finally {
if (input != null) {
try {
input.close();
} catch (IOException e) {
}
}
}
}
@RequestMapping(value = "/uploadFile", method = RequestMethod.POST)
public ResultInfo uploadIcon( HttpServletRequest request, HttpServletResponse response) {
InputStream input = null;
try {
MultipartResolver resolver = new CommonsMultipartResolver(request.getSession().getServletContext());
MultipartHttpServletRequest multipartRequest = resolver.resolveMultipart(request);
MultipartFile file = multipartRequest.getFile("file");
if (file == null) {
logger.info("file is null");
return new ResultInfo(ResponseUtil.param_error_code,"参数错误");
}
String contentType = file.getContentType();
logger.info("upload file ContentType: " + contentType);
double fileSize = file.getSize() / 1024 / 1024;
if (fileSize > 50) {
return new ResultInfo(ResponseUtil.faile_code,"上传文件过大,无法处理,请重新上传");
}
input = file.getInputStream();
} catch (Exception e) {
logger.error("uploadIcon fail", e);
return new ResultInfo(ResponseUtil.faile_code, "上传异常");
} finally {
if (input != null) {
try {
input.close();
} catch (IOException e) {
}
}
}
}
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>${commons-fileupload.version}</version>
</dependency>
<form action="/uploadFile" method="post" enctype="multipart/form-data">
<input type="file" name="file" />
<br>
<input type="text" name="loginsession" value="6652626-626562-2-651i5-1i511"/>
<br>
<input type="submit" value="上传文件" />
</form>