Struts2_17_Struts2 文件上传和下载(2)

这一篇,主要是

1.多文件上传:就是把参数换成数组

2.文件下载


 多文件上传

fileUpload.jsp:

<form action="upload" method="post"  enctype="multipart/form-data">
	<input type="file" name="file1"/>
	<input type="file" name="file1"/>
	<input type="file" name="file1"/>
	<input type="submit" value="上传"/>
</form>
<s:fielderror></s:fielderror>

Action:

public class FileUploadAction extends ActionSupport{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private File[] file1;//文件
	private String[] File1FileName;//文件名
	private String[] file1ContentType;//文件类型
	
	public File[] getFile1() {
		return file1;
	}

	public void setFile1(File[] file1) {
		this.file1 = file1;
	}

	public String[] getFile1FileName() {
		return File1FileName;
	}

	public void setFile1FileName(String[] file1FileName) {
		File1FileName = file1FileName;
	}

	public String[] getFile1ContentType() {
		return file1ContentType;
	}

	public void setFile1ContentType(String[] file1ContentType) {
		this.file1ContentType = file1ContentType;
	}

	@Override
	public String execute() throws Exception {
		for(int i=0;i<file1.length;i++) {
			
			System.out.println("文件名:"+File1FileName[i]);
			System.out.println("文件类型:"+file1ContentType[i]);
			String filePath = "c:/upload/"+File1FileName[i];
			File saveFile = new File(filePath);
			FileUtils.copyFile(file1[i], saveFile);
		}
		return SUCCESS;
	}
 
	
}

测试:


文件下载


新建Action:FileDowmloadAction:

public class FileDownloadAction extends ActionSupport{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private String fileName;
	
	public String getFileName() {
		return fileName;
	}

	public void setFileName(String fileName) throws Exception{
		fileName = new String(fileName.getBytes(), "ISO8859-1");
		this.fileName = fileName;
	}

	public InputStream getInputStrem() throws Exception{
		File file = new File("c:/upload/假期学习计划.txt");
		this.fileName="假期学习计划";
		return new FileInputStream(file);
	}
	
}

struts.xml:

		<action name="download" class="com.java.action.FileDownloadAction">
			<result type="stream">
				<param name="contentDisposition">attachment;filename=${fileName}</param>
			</result>
		</action>

fileDownload.jsp:

<a href="download">文件下载</a>

测试:

猜你喜欢

转载自blog.csdn.net/qq_27163329/article/details/81613167