SpringMvc 文件上传

Love The Way You Lie 2022-05-27 02:49 461阅读 0赞

上传文件的表单必须指定为:

  1. enctype="multipart/form-data"
  2. method="post"

springmvc.xml配置

  1. <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
  2. <property name="defaultEncoding" value="utf-8"></property>
  3. <property name="maxUploadSize" value="10485760000"></property>
  4. </bean>

用form表单提交

前台

  1. <form id="loadForm" action="${path}/upload" enctype="multipart/form-data" method="post">
  2. <input name="fileInput" type="file">
  3. <input type="button" onclick="upload()" value="提交"/>
  4. </form>

控制器

  1. @RequestMapping(value="upload", method = RequestMethod.POST)
  2. public String upload(
  3. HttpSession session,
  4. @RequestParam("fileInput") MultipartFile file) throws IOException {
  5. String path = session.getServletContext().getRealPath("/static/img");
  6. String fileName = file.getOriginalFilename();
  7. file.transferTo(new File(path, fileName));
  8. System.out.println(path+","+fileName);
  9. return "success";
  10. }

ajax提交

前台代码

  1. <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
  2. <form id="loadForm" action="${path}/upload" enctype="multipart/form-data" method="post">
  3. <input name="fileInput" type="file">
  4. <input type="button" onclick="upload()" value="提交"/>
  5. </form>
  6. <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>

控制器还是一样的

发表评论

表情:
评论列表 (有 0 条评论,461人围观)

还没有评论,来说两句吧...

相关阅读

    相关 SpringMVC文件

    文件上传自然是一个网站必不可少的元素之一,SpringMVC这个网站编程框架自然也有这个东西,下一面举一个例子说明这个问题。 如下图所示,一个简单的上传控件,只让上传bmp、

    相关 SpringMVC_文件

    一、文件上传 1、说明 SpringMVC为文件上传提供了直接的支持,这种支持是通过即插即用的 MultipartResolver 实现的。Spring用 Jak