文件上传FileUpload

8年前
web.xml
<?xml version="1.0" encoding="UTF-8"?>          customization                  struts-cleanup                        org.apache.struts2.dispatcher.ActionContextCleanUp                                    struts2                        org.apache.struts2.dispatcher.FilterDispatcher                                  struts-cleanup          /*                         struts2          /*                         index.jsp            
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>                          /upload.jsp               /upload.jsp     /upload_success.jsp           

StrutsFileUpload.java
package com.sterning;    import java.io.File;  import javax.servlet.ServletContext;  import org.apache.commons.io.FileUtils;  import org.apache.struts2.util.ServletContextAware;  import com.opensymphony.xwork2.ActionSupport;    public class StrutsFileUpload extends ActionSupport implements ServletContextAware {     private File upload;// 实际上传文件   private String uploadContentType; // 文件的内容类型(页面的文件名+ContentType)   private String uploadFileName; // 上传文件名(页面的文件名+FileName)   private String fileCaption;// 上传文件时的备注   private ServletContext context;     public String execute() throws Exception {    try {     String targetDirectory = context.getRealPath("/upload");     String targetFileName = uploadFileName;     File target = new File(targetDirectory, targetFileName);     FileUtils.copyFile(upload, target);       setUploadFileName(target.getPath());// 保存文件的存放路径    } catch (Exception e) {     addActionError(e.getMessage());     return INPUT;    }    return SUCCESS;   }     public String getFileCaption() {    return fileCaption;   }     public void setFileCaption(String fileCaption) {    this.fileCaption = fileCaption;   }     public File getUpload() {    return upload;   }     public void setUpload(File upload) {    this.upload = upload;   }     public String getUploadContentType() {    return uploadContentType;   }     public void setUploadContentType(String uploadContentType) {    this.uploadContentType = uploadContentType;   }     public String getUploadFileName() {    return uploadFileName;   }     public void setUploadFileName(String uploadFileName) {    this.uploadFileName = uploadFileName;   }     public void setServletContext(ServletContext context) {    this.context = context;   }    }  

upload.jsp
<%@ page language="java" contentType="text/html; charset=GB2312"%>  <%@ taglib prefix="s" uri="/struts-tags"%>         文件上传示例    " rel="stylesheet" type="text/css" />                                 

文件上传示例



upload_success.jsp
<%@ page language="java" contentType="text/html; charset=GB2312"%>  <%@ taglib prefix="s" uri="/struts-tags"%>         上传成功    " rel="stylesheet" type="text/css" />       

上传成功





<%-- 展示图像(路径未指定)

--%>

需要用到的包:
commons-fileupload-1.2.1.jar
commons-io-1.3.2.jar
commons-logging-1.1.1.jar
freemarker-2.3.12.jar
ognl-2.6.11.jar
struts2-core-2.1.2.jar
xwork-2.1.1.jar