struts2學習(12)——上傳文件

上傳單個文件


public class UploadAction {
	private File image;
	private String imageFileName;// 上傳文件名稱,規則前面必須是上傳字段的名稱後面是FileName
	// 得到這兩個值之後就要把這兩個值保存到硬盤上,如果不保存到硬盤上的話,這個文件會存放到struts2框架的臨時文件上
	private String imageContentType;// 這個同上,這個是上傳文件類型

	public String execute() {
		String realPath = ServletActionContext.getServletContext().getRealPath("/images");// 相對於站點的目錄,images
		System.out.println(realPath);
		System.out.println(imageFileName);
		if (image != null) {
			File saveFile = new File(new File(realPath), imageFileName);// file(directory,name);
			if (!saveFile.getParentFile().exists()) {
				saveFile.getParentFile().mkdirs();
			}
			try {
				
				FileUtils.copyFile(image, saveFile);
				ActionContext act = ActionContext.getContext();
				act.put("result", "上傳成功!");
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		return "success";
	}


前臺頁面

<form action="${pageContext.request.contextPath }/uploadImage" method="post" enctype="multipart/form-data">
		文件:<input type="file" name="image" />
		<input type="submit" value="上傳" />
	</form>

上傳多個文件

public class MutiUploadAction {
	private File[] images;//定義成數組
	private String[] imagesFileName;//定義成數組
	
	public String execute() throws IOException{
		String realPath = ServletActionContext.getServletContext().getRealPath("images");
		if(images != null){
			File savedir = new File(realPath);
			if(!savedir.getParentFile().exists()){
				savedir.getParentFile().mkdirs();
			}
			//循環上傳
			for(int i = 0; i < images.length; i++){
				File saveFile = new File(savedir,imagesFileName[i]);
				FileUtils.copyFile(images[i], saveFile);
				ActionContext.getContext().put("result", "上傳成功!");
			}
		}
		
		return "success";
	}

前臺頁面

<form action="${pageContext.request.contextPath}/mutiuploadImage" enctype="multipart/form-data" method="post" >
		文件1:<input type="file" name="images" /><br/>
		文件2:<input type="file" name="images" /><br/>
		文件3:<input type="file" name="images" /><br/>
		文件4:<input type="file" name="images" /><br/>
		文件5:<input type="file" name="images" /><br/>
		<input type="submit" value="上傳"/>
	</form>





發佈了55 篇原創文章 · 獲贊 8 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章