SpringMVC 多文件上传

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringMVC 多文件上传相关的知识,希望对你有一定的参考价值。

springMVC.xml 配置

<bean id="multipartResolver"  class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <property name="defaultEncoding" value="uft-8" /> <!-- 默认编码 (ISO-8859-1) -->
        <property name="maxInMemorySize" value="10240" /> <!-- 最大内存大小 (10240)-->
        <property name="uploadTempDir" value="/upload/" /> <!-- 上传后的目录名 (WebUtils#TEMP_DIR_CONTEXT_ATTRIBUTE) -->
        <property name="maxUploadSize" value="-1" /> <!-- 最大文件大小,-1为无限止(-1) -->
        </bean>

jsp代码

 

 <form action="spring/upload2"  enctype="multipart/form-data" method="post">
        上传文件1:<input name="file" type="file"/><br/>
        上传文件2:<input name="file" type="file"/><br/>
        <input type="submit" value="提交">
    </form>

 

后台代码

 

@RequestMapping(value = "/upload2")
    public String filesUpload(@RequestParam("file") MultipartFile[] files,
            HttpServletRequest request) throws IOException {
        String message = "";
        try {

            for (int i = 0; i < files.length; i++) {
                if (!files[i].isEmpty()) {
                    // 开始上传时间
                    int startTime = (int) System.currentTimeMillis();
                    // 拿到文件名称
                    String fileName = files[i].getOriginalFilename();
                    // 上传路径
                    String path = "G:/" + fileName;
                    System.out.println("文件名:" + fileName);
                    // 上传
                    files[i].transferTo(new File(path));
                    message = "上传成功";
                    request.getSession().setAttribute("message", message);
                    int endTime = (int) System.currentTimeMillis();
                    // 计算上传时间
                    System.out.println(endTime - startTime + "ms");
                }
                message = "上传成功";
                request.getSession().setAttribute("message", message);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }

        return "forward:/WEB-INF/jsp/FileUpload/result.jsp";
    }

 

以上是关于SpringMVC 多文件上传的主要内容,如果未能解决你的问题,请参考以下文章

SpringMVC 多文件上传

SpringMVC单文件上传多文件上传文件列表显示文件下载(转)

SpringMVC 文件上传配置,多文件上传,使用的MultipartFile(转)

SpringMVC 获得请求数据 -- 文件上传(单/多文件上传)

springMVC两种方式实现多文件上传及效率比较

springMVC实现 MultipartFile 多文件上传,StandardMultipartHttpServletRequest上传文件,在请求中上传文件,比如上传图片