使用html5多属性上传多个文件 - spring mvc

时间:2015-08-17 05:24:07

标签: html5 spring-mvc

我正在尝试使用html5属性多个上传多个文件。这个link为我提供了一个良好的开端。但是,我遇到的问题是我无法在控制器中读取multipartFile。

这是我的POjO课程

public class FileProduct {

    private String name;
    private List<MultipartFile> images;

}

我的控制器

public String processNewListing(Model model
                            , @ModelAttribute FileProduct product
                            , HttpServletRequest request
            ) {
        List<MultipartFile> files = product.getImages();
        List<String> fileNames = new ArrayList<String>();
        log.info("Files legnth: " + files.size());
        log.info("name: " + product.getName());
}

这就是我的表格:

 <form:form commandName="product" action="${newListingForm }" method="POST" enctype="multipart/form-data">
     <form:input path="name" type="text"/>
     <form:input path="images" type="file" multiple=""/>
     <input type="submit">

 </form:form>

所以我能够在我的控制器中打印出“名称”但是我的“文件”总是大小为1,无论我是否选择了任何文件。我已经按照链接中的建议来包含common-fileupload和common-io,但问题不在于修复。

1 个答案:

答案 0 :(得分:0)

在jsp中使用以下

<form ation="your/path" enctype="multipart/form-data" method="POST">

在控制器中使用

import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;

public String yourMethod(MultipartHttpServletRequest request){

}

这应解决您的问题