读书人

Struts2实现多文件下传

发布时间: 2012-09-21 15:47:26 作者: rapoo

Struts2实现多文件上传

package com.test.action;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;import java.util.List;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.ServletActionContext;import com.opensymphony.xwork2.ActionSupport;public class UploadAction extends ActionSupport {private String username;private String password;private List<File> file;private List<String> fileFileName;private List<String> fileContentType;public List<File> getFile() {return file;}public void setFile(List<File> file) {this.file = file;}public List<String> getFileFileName() {return fileFileName;}public void setFileFileName(List<String> fileFileName) {this.fileFileName = fileFileName;}public List<String> getFileContentType() {return fileContentType;}public void setFileContentType(List<String> fileContentType) {this.fileContentType = fileContentType;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}@Overridepublic String execute() throws Exception {for(int i=0; i<file.size(); ++i){System.out.println(i);InputStream is =new FileInputStream(file.get(i));HttpServletRequest request=ServletActionContext.getRequest();String root = request.getRealPath("/Upload");File destfile=new File(root,this.getFileFileName().get(i));OutputStream os=new FileOutputStream(destfile);byte[] buffer = new byte[400];int length = 0;while ((length = is.read(buffer)) > 0){os.write(buffer, 0, length);}os.close();is.close();}return SUCCESS;}}

读书人网 >软件架构设计

热点推荐