SpringMvc 文件上传 Love The Way You Lie 2022-05-27 02:49 230阅读 0赞 上传文件的表单必须指定为: enctype="multipart/form-data" method="post" springmvc.xml配置 <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="defaultEncoding" value="utf-8"></property> <property name="maxUploadSize" value="10485760000"></property> </bean> ### 用form表单提交 ### 前台 <form id="loadForm" action="${path}/upload" enctype="multipart/form-data" method="post"> <input name="fileInput" type="file"> <input type="button" onclick="upload()" value="提交"/> </form> 控制器 @RequestMapping(value="upload", method = RequestMethod.POST) public String upload( HttpSession session, @RequestParam("fileInput") MultipartFile file) throws IOException { String path = session.getServletContext().getRealPath("/static/img"); String fileName = file.getOriginalFilename(); file.transferTo(new File(path, fileName)); System.out.println(path+","+fileName); return "success"; } ## ajax提交 ## 前台代码 <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script> <form id="loadForm" action="${path}/upload" enctype="multipart/form-data" method="post"> <input name="fileInput" type="file"> <input type="button" onclick="upload()" value="提交"/> </form> <script> function upload(){ var formData = new FormData($( "#loadForm" )[0]); $.ajax({ url: '${path}/upload', type: 'POST', data: formData, async: false, cache: false, contentType: false, processData: false, success: function (msg) { alert(msg); } }); } </script> 控制器还是一样的
还没有评论,来说两句吧...