我正在使用 Spring MVC 和 JSP。我想上传 2 个文件,但问题是只上传了一个文件。下面是代码:
<form id="myform" name="myform" action="/createRequest.htm" enctype="multipart/form-data" method="POST">
//form elements like textbox, checkbox
<tr>
<th class="RelReqstAllign"></th><td> (Or)<input type="file" name="fileUpload" size="50"/></td>
</tr>
<tr>
<th class="RelReqstAllign"></th><td><input type="file" name="fileUpload" size="50" /></td>
</tr>
</form>
下面是弹簧控制器代码:
@RequestMapping(value = "/createRequest", method = RequestMethod.POST)
public ModelAndView createRequest(final HttpServletRequest request,
final HttpServletResponse response,
final @ModelAttribute("spRequestDTO") SPRequestDTO dto,
final BindingResult beException,
final @RequestParam("buttonName") String buttonName,
@RequestParam CommonsMultipartFile[] fileUpload) throws IOException {
if (fileUpload != null && fileUpload.length > 0) {
for (CommonsMultipartFile aFile : fileUpload) {
System.out.println("Saving file: "
+ aFile.getOriginalFilename());
if (!aFile.getOriginalFilename().equals("")) {
try {
aFile.transferTo(new File(saveDirectory + aFile.getOriginalFilename()));
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
当我调试控制器时,fileUpload
即使我上传两个文件,也仅显示一个文件。
下面是Spring-mvc.xml中添加的代码
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
</bean>
就这样做吧。你不需要拥有超过input
在表单中添加标签以选择多个文件
<input type="file" name="fileUpload" size="50" multiple/>
它将允许用户通过单击来选择系统中的多个文件ctrl
键盘中的选项。
然后,在你的动作课上,按照你想要的方式做你的事情。
确保fileUpload
变量作为 bean 类中的文件数组
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)