struts2上传文件
fileupload.jsp
?struts.xml
package com.fileupload;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import org.apache.struts2.ServletActionContext;import com.opensymphony.xwork2.Action;public class UploadAction implements Action {private File file;private String contentType;private String fileName;public void setFile(File file) {this.file = file;}public void setFileContentType(String contentType) {this.contentType = contentType;}public void setFileFileName(String fileName) {this.fileName = fileName;}public String execute() {String path = ServletActionContext.getServletContext().getRealPath("");try {FileInputStream fis = new FileInputStream(file);FileOutputStream fos = new FileOutputStream(path+"/"+fileName);byte[] bytes = new byte[1024];int num = 0;while((num = fis.read(bytes))>0){fos.write(bytes,0,num);}fos.flush();fos.close();fis.close();System.out.println("ok");} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}return SUCCESS;}}File?
ContentType
FileName
这三个属性是必须的,在写set方法时必须是:
setFile?? setFileContentType?? setFileFileName