SpringMVC中MultipartFile参数问题


如果方法的参数中带了MultipartFile(不管@RequestParam是true还是false),那么spring mvc就会先判断该请求是不是multipart请求。如果请求参数中没有带multipartFile,则会报错"org.springframework.web.multipart.MultipartException: The current request is not a multipart request"。这种情况导致了文件是必传的参数,从网上找到了大神的回答,有解决方案如下:

方法的参数中不要MultipartFile,方法体中做好判断,代码如下

boolean isMultipart = ServletFileUpload.isMultipartContent(request);
if (isMultipart){ 
    MultipartHttpServletRequest multipartRequest = WebUtils.getNativeRequest(request, MultipartHttpServletRequest.class);
    MultipartFile file = multipartRequest.getFile("file");
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM