与单个的文件的上传是非常相似的,不过需要注意的是在客户端定义的文件名称要相同,在action中定义属性的类型要为数组类型或list类型
Jsp页面
<form action="${pageContext.request.contextPath }/test/helloword.do" enctype="multipart/form-data" method="post">
文件1:<input type="file" name="image"/><br/>
文件2:<input type="file" name="image"/><br/>
文件3:<input type="file" name="image"/><br/>
<input type="submit" value="上传">
</form>
Action方法中
private File[] image;
private String[] imageFileName;
//此处省略这两个属性的set和get方法
public String execute() throws Exception {
// 文件保存到images下,获取文件夹的真实路径
String realPath = ServletActionContext.getServletContext().getRealPath(
"/images");
// 打印出真实路径
System.out.println("真实路径" + realPath);
if (image != null) {
File savedir = new File(realPath);
if (savedir.exists()) {
savedir.mkdirs();
}
for (int i = 0; i < image.length; i++) {
File saveFile = new File(savedir, imageFileName[i]);
FileUtils.copyFile(image[i], saveFile);
}
ActionContext.getContext().put("message", "上传成功");
}
return "success";
}
复习struts2之多文件上传
最新推荐文章于 2024-05-03 03:54:58 发布