<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    我的漫漫程序之旅

    專注于JavaWeb開發(fā)
    隨筆 - 39, 文章 - 310, 評論 - 411, 引用 - 0
    數(shù)據(jù)加載中……

    Struts1.2實(shí)現(xiàn)單文件上傳

    jsp:
    <%@ page language="java" pageEncoding="GBK"%>
    <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%> 
    <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
     
    <html> 
        
    <head>
            
    <title>JSP for UpfileForm form</title>
        
    </head>
        
    <body>
            
    <html:form action="/upfile" enctype="multipart/form-data">
                file : 
    <html:file property="file" /><html:errors property="file"/><br/>
                
    <html:submit value="確定"/>
            
    </html:form>
        
    </body>
    </html>

    注意表單類型必須為:enctype="multipart/form-data".
    Struts-Config.xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">

    <struts-config>
      
    <data-sources />
      
    <form-beans >
        
    <form-bean name="upfileForm" type="com.yourcompany.struts.form.UpfileForm" />

      
    </form-beans>

      
    <global-exceptions />
      
    <global-forwards />
      
    <action-mappings >
        
    <action
          
    attribute="upfileForm"
          input
    ="/upfile.jsp"
          name
    ="upfileForm"
          path
    ="/upfile"
          scope
    ="request"
          type
    ="com.yourcompany.struts.action.UpfileAction" />

      
    </action-mappings>

      
    <message-resources parameter="com.yourcompany.struts.ApplicationResources" />
    </struts-config>


    web.xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
      
    <servlet>
        
    <servlet-name>action</servlet-name>
        
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
        
    <init-param>
          
    <param-name>config</param-name>
          
    <param-value>/WEB-INF/struts-config.xml</param-value>
        
    </init-param>
        
    <init-param>
          
    <param-name>debug</param-name>
          
    <param-value>3</param-value>
        
    </init-param>
        
    <init-param>
          
    <param-name>detail</param-name>
          
    <param-value>3</param-value>
        
    </init-param>
        
    <load-on-startup>0</load-on-startup>
      
    </servlet>
      
    <servlet-mapping>
        
    <servlet-name>action</servlet-name>
        
    <url-pattern>*.do</url-pattern>
      
    </servlet-mapping>
      
    <welcome-file-list>
        
    <welcome-file>index.jsp</welcome-file>
      
    </welcome-file-list>
    </web-app>

    UpfileForm.java:
    /*
     * Generated by MyEclipse Struts
     * Template path: templates/java/JavaClass.vtl
     
    */

    package com.yourcompany.struts.form;

    import javax.servlet.http.HttpServletRequest;
    import org.apache.struts.action.ActionErrors;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionMapping;
    import org.apache.struts.upload.FormFile;

    /** 
     * MyEclipse Struts
     * Creation date: 09-28-2007
     * 
     * XDoclet definition:
     * @struts.form name="upfileForm"
     
    */

    public class UpfileForm extends ActionForm {
        
    /*
         * Generated fields
         
    */


        
    /** file property */
        
    private FormFile file;


        
    /*
         * Generated Methods
         
    */


        
    /** 
         * Method validate
         * 
    @param mapping
         * 
    @param request
         * 
    @return ActionErrors
         
    */

        
    public ActionErrors validate(ActionMapping mapping,
                HttpServletRequest request) 
    {
            
    // TODO Auto-generated method stub
            return null;
        }


        
    /** 
         * Method reset
         * 
    @param mapping
         * 
    @param request
         
    */

        
    public void reset(ActionMapping mapping, HttpServletRequest request) {
            
    // TODO Auto-generated method stub
        }


        
    public FormFile getFile() {
            
    return file;
        }


        
    public void setFile(FormFile file) {
            
    this.file = file;
        }


        
    }

    UpfileAction.java:
    /*
     * Generated by MyEclipse Struts
     * Template path: templates/java/JavaClass.vtl
     
    */

    package com.yourcompany.struts.action;

    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;

    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
    import org.apache.struts.upload.FormFile;

    import com.yourcompany.struts.form.UpfileForm;

    /** 
     * MyEclipse Struts
     * Creation date: 09-28-2007
     * 
     * XDoclet definition:
     * @struts.action path="/upfile" name="upfileForm" input="/upfile.jsp" scope="request" validate="true"
     
    */

    public class UpfileAction extends Action {
        
    /*
         * Generated Methods
         
    */


        
    /** 
         * Method execute
         * 
    @param mapping
         * 
    @param form
         * 
    @param request
         * 
    @param response
         * 
    @return ActionForward
         
    */

        
    public ActionForward execute(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response) 
    {
            UpfileForm upfileForm 
    = (UpfileForm) form;
            FormFile file 
    = upfileForm.getFile();
            FileOutputStream fileOutput;
            
            
    try {
                fileOutput 
    = new FileOutputStream("d://" + file.getFileName());
                fileOutput.write(file.getFileData());
                fileOutput.flush();
                fileOutput.close();
            }
     catch (FileNotFoundException e) {
                e.printStackTrace();
            }
     catch (IOException e) {
                e.printStackTrace();
            }

            
            

            
    return null;
        }

    }
    當(dāng)然對于Form我們也可以用動態(tài)的:
    LazyValidatorForm uploadForm = (LazyValidatorForm) form;
    然后FormFile可以直接 通過form得到:
    FormFile formFile = uploadForm.get("file");

    相應(yīng)的在web.xml中的配置:
    <form-bean name="uploadForm" type="org.apache.struts.validator.LazyValidatorForm" />

    源碼下載


    posted on 2008-01-31 18:11 々上善若水々 閱讀(12080) 評論(3)  編輯  收藏 所屬分類: Struts1.x

    評論

    # re: Struts1.2實(shí)現(xiàn)單文件上傳  回復(fù)  更多評論   

    方法太牛比了。mail:yaoyao19851023@163.com
    2008-11-19 13:07 | yaoyao

    # re: Struts1.2實(shí)現(xiàn)單文件上傳  回復(fù)  更多評論   

    不靠譜,用接口里的方法如何得到文件流?
    FormFile file = upfileForm.getFile();
    FileOutputStream fileOutput;

    try {
    fileOutput = new FileOutputStream("d://" + file.getFileName());
    fileOutput.write(file.getFileData());
    2011-05-03 10:16 | Stan

    # re: Struts1.2實(shí)現(xiàn)單文件上傳[未登錄]  回復(fù)  更多評論   

    文件過大怎么么處理呀?謝啦
    2012-05-12 19:24 | 陳晨
    主站蜘蛛池模板: 久久久久亚洲Av片无码v| 中文字幕无码不卡免费视频 | 国产精品成人免费综合| 免费看黄视频网站| 久久亚洲综合色一区二区三区| 亚洲AV永久无码精品一区二区国产| 全免费a级毛片免费**视频| 超pen个人视频国产免费观看| 四虎成人免费观看在线网址 | 91视频免费观看| 中文精品人人永久免费 | 77777亚洲午夜久久多喷| 亚洲国产视频久久| 亚洲综合精品成人| 亚洲精品理论电影在线观看| 精品亚洲av无码一区二区柚蜜| 国产精品亚洲lv粉色| 牛牛在线精品观看免费正| 一道本在线免费视频| a毛片免费在线观看| 国产精品网站在线观看免费传媒 | 曰批免费视频播放免费| 波霸在线精品视频免费观看| 97无码人妻福利免费公开在线视频| 亚在线观看免费视频入口| 国内精自视频品线六区免费 | 十八禁在线观看视频播放免费| 99久久免费观看| 国语成本人片免费av无码| 免费jjzz在在线播放国产| 亚洲精品乱码久久久久66| 亚洲欧洲综合在线| 久久久久久亚洲av无码蜜芽| 一个人看www免费高清字幕| 男女午夜24式免费视频| 免费可以看黄的视频s色| 又粗又硬又黄又爽的免费视频| 亚洲热线99精品视频| 亚洲人成网站在线观看播放青青| 亚洲精品GV天堂无码男同| 精品人妻系列无码人妻免费视频 |