文件上传示例

来源:百度文库 编辑:神马文学网 时间:2024/04/27 20:59:41
struts2文件上传(2009-04-17 12:50:03) 标签:j2ee、struts2 it  分类:j2ee-struts2

源代码:

1.包如下:请自行下载


2.Action类


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; // 文件的内容类型

private String uploadFileName; // 上传文件名

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;
    }

}

3.页面

上传页面: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" />
   


       


           


           


               
               
           


               
               
           


           


               
               
           


               
               
           


       


                   


                        上传成功
                   


               

                   
               

                   
               

                   
               

                   
               

                   
               

                   
               

                   
               

                   
               


4.struts.xml


    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">


   
   
 
   
       
            /upload.jsp
       

       
       
            /upload.jsp
            /upload_success.jsp
       

   


5.web.xml


    xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

customization


        struts-cleanup
       
            org.apache.struts2.dispatcher.ActionContextCleanUp
       

   


   
        struts2
       
            org.apache.struts2.dispatcher.FilterDispatcher
       

   


   
        struts-cleanup
        /*
   


   
        struts2
        /*