最近在做Struts項目時碰到了上傳多個文件的問題。在網上查了不少資料,也沒有找到用Struts上傳多個文件的例子。我經過幾天的研究,實現了用Struts上傳多個文件的功能?,F在貼出來讓大家共享!
一。建立ActionForm
package com.cnehu.struts.form;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.upload.FormFile;
import org.apache.struts.upload.MultipartRequestHandler;
/**
 * <p>
 * Title:UpLoadForm
 * </p>
 * <p>
 * Copyright: Copyright (c) 2005 techyang http://blog.csdn.net/techyang
 * </p>
 * @author techyang
 * @version 1.0
 */
public class UpLoadForm extends ActionForm
{
    public static final String ERROR_PROPERTY_MAX_LENGTH_EXCEEDED = "org.apache.struts.webapp.upload.MaxLengthExceeded";
    protected FormFile theFile;
    protected FormFile theFile2;
    public FormFile getTheFile()
    {
        return theFile;
    }
    public void setTheFile(FormFile theFile)
    {
        this.theFile = theFile;
    }
    public ActionErrors validate(ActionMapping mapping,
            HttpServletRequest request)
    {
        ActionErrors errors = null;
        //has the maximum length been exceeded?
        Boolean maxLengthExceeded = (Boolean) request
                .getAttribute(MultipartRequestHandler.ATTRIBUTE_MAX_LENGTH_EXCEEDED);
        if ((maxLengthExceeded != null) && (maxLengthExceeded.booleanValue()))
        {
            errors = new ActionErrors();
            errors.add(ERROR_PROPERTY_MAX_LENGTH_EXCEEDED, new ActionError(
                    "maxLengthExceeded"));
        }
        return errors;
    }
    /**
     * @return Returns the theFile2.
     */
    public FormFile getTheFile2()
    {
        return theFile2;
    }
    /**
     * @param theFile2 The theFile2 to set.
     */
    public void setTheFile2(FormFile theFile2)
    {
        this.theFile2 = theFile2;
    }
}
新聞熱點
疑難解答