首页 > 技术文章 > 用ajax和formdata传送文件到后台

chen-hui 2018-10-10 10:14 原文

html:

js:

controller:

 

 注意:1controller中接受的参数名和input标签中的name属性需要一样

            2ssm中的xml需要配置才能使用文件上传,springboot不需要,直接可以使用

 

 

 

多文件传输1:

public Result Manufacturer(HttpServletRequest request)
   { 
     //将当前上下文初始化给  CommonsMutipartResolver (多部分解析器)
        CommonsMultipartResolver multipartResolver=new CommonsMultipartResolver(
          request.getSession().getServletContext());
        //检查form中是否有enctype="multipart/form-data"
        if(multipartResolver.isMultipart(request))
        {
            //将request变成多部分request
            MultipartHttpServletRequest multiRequest=(MultipartHttpServletRequest)request;
           //获取multiRequest 中所有的文件名
            Iterator iter=multiRequest.getFileNames();
            while(iter.hasNext())
            {
                //一次遍历所有文件
                MultipartFile file=multiRequest.getFile(iter.next().toString());
                System.out.println(file.getName());
                if(file!=null)
                {
                    String path="E:/springUpload"+file.getOriginalFilename();
                    //上传
                  //  file.transferTo(new File(path));
                }
                
            }
        }

}

导入依赖:

  <dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3</version>
</dependency>

 

多文件传输2:

    后台:

   前台:

   

 

 多文件传输3:

后台:

前台:

 

 

 

另外:如果要用json形式传图片,可以用json传文件的url地址,服务器端将地址保存到数据库,前端需要获取图片时,根据地址获取图片。

 

推荐阅读