本篇文章主要介绍了"JQueryAjax使用SpringMVC中MultipartFile进行文件上传的整合",对于Javascript教程感兴趣的同学可以参考一下: 对于一个带有文件上传的表单,后台使用springMVC封装的MultipartFile file接收文件,并且需要使用异步提交,并返回相应的提示信息在这种情况下...
下载地址:http://malsup.github.com/jquery.form.js
对于一个带有文件上传的表单,后台使用springMVC封装的MultipartFile file接收文件,并且需要使用异步提交,并返回相应的提示信息
在这种情况下,我最开始使用了好几种方法
第一种:普通的JQUERY的AJAX,但是后台一旦使用MultipartFile 这个类接收就会报request的一个异常BUG,这种方法不行
第二种:使用JQUERY的普通表单提交,也就是submit,后台使用springMVC,这种情况可以实现,但是后台必须跳转页面,也就是无法异步提交
于是产生了第三种方法
第三种:使用JQUERY的form插件,即jquery.form.js这个插件,然后使用插件的ajaxSubmit方法;代码如下
前端:
$("#pageForm").ajaxSubmit({ type: "POST", url:"你的action.html", dataType: "json", success: function(data){ if(data.msg=='SUCCESS'){ alert(success); } else{ alert(data.msg); } } });后端:
@RequestMapping("/insertGoodsBrand") public void insertGoodsBrand( HttpServletRequest request, @RequestParam(value = "file", required = false) MultipartFile file,HttpServletResponse response, GoodsBrand goodsBrand){ JSONObject obj = new JSONObject(); PrintWriter out = null; try { out = response.getWriter(); String path = request.getSession().getServletContext().getRealPath( "upload\\goods\\brand"); String fileName = file.getOriginalFilename(); String saveFileName = Common.getNowCorrect2Second() + "." + fileName.substring(fileName.lastIndexOf(".") + 1); File targetFile = new File(path, saveFileName); if (!targetFile.exists()) { targetFile.mkdirs(); } String msg = ""; file.transferTo(targetFile); msg = backGoodsBrandBus.insertGoodsBrand(goodsBrand, saveFileName); if (msg.equals("SUCCESS")) { obj.put("msg", msg); } else { obj.put("msg", msg); } out.print(obj); } catch (Exception e) { e.printStackTrace(); } finally{ out.close(); } }这样既能解决文件传值,又能异步提交了
以上就介绍了JQueryAjax使用SpringMVC中MultipartFile进行文件上传的整合,包括了方面的内容,希望对Javascript教程有兴趣的朋友有所帮助。