Struts2 多文件上传

Struts2多文件上传只需要将 单文件上传中的File变成File[]  即可,上篇文章:单文件上传

<form action="${pageContext.request.contextPath}/hello/upload_uploadImage.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/>
   			图片4:<input type="file" name="image"  /><br/>
   			<input type="submit" value="上传" />
   		</form> 


action:

public class UploadAction {
	private File[] image;
	private String[] imageFileName;
	private String[] imageContentType;
	private String message;

	public String uploadImage() {
		try {
			String realPath = ServletActionContext.getServletContext().getRealPath("/images");
			File filePath = new File(realPath);
			if (!filePath.exists()) {
				filePath.mkdirs();
			}
			System.out.println("文件存放路径:" + realPath);
			for(int i=0;i<image.length;i++){
				if (image[i] != null) {
					System.out.println("文件名:" + imageFileName[i] + ",文件类型:" + imageContentType[i]);
					File saveFile = new File(filePath, imageFileName[i]);
					FileUtils.copyFile(image[i], saveFile);
				}
			}
			message="文件上传成功!";
		} catch (IOException e) {
			e.printStackTrace();
		}
		catch (Exception e) {
			e.printStackTrace();
		}
		return "message";
	}

	
	public File[] getImage() {
		return image;
	}
	public void setImage(File[] image) {
		this.image = image;
	}
	
	public String[] getImageFileName() {
		return imageFileName;
	}
	public void setImageFileName(String[] imageFileName) {
		this.imageFileName = imageFileName;
	}
	
	public String[] getImageContentType() {
		return imageContentType;
	}
	public void setImageContentType(String[] imageContentType) {
		this.imageContentType = imageContentType;
	}
	
	public String getMessage() {
		return message;
	}
	public void setMessage(String message) {
		this.message = message;
	}

}


posted @ 2015-10-12 16:37  Bodi  阅读(179)  评论(0编辑  收藏  举报