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

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

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

    隨筆 - 115  文章 - 481  trackbacks - 0
    <2025年7月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(19)

    隨筆檔案(115)

    文章檔案(4)

    新聞檔案(1)

    成員連接

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜


      在struts中,引入org.apache.struts.upload包,對Apache?Commons?fileupload上傳組件進行封裝處理文件的上傳,Formbean中定義FormFile接口來接收上傳文件。

      由于EasyJWeb定位于中小型項目應用,因此簡化了上傳的處理,直接使用Apache?Commons?fileupload來處理上傳。由于框架核心引擎中對上傳的內容已經自動進行了處理,因此,在action中,處理上傳文件跟處理一般的文本字段沒有什么區別!

      廢話不多說,直接進入正題:
      
    1、上傳表單
      如開源的EasyJF?BBS系統中的上傳示例代碼,html表單部分內容如下:
      <form?name="EditForm"?enctype="multipart/form-data"?method="post"?action="/bbsUpload.ejf"?style="height:0px">
    ?<input?type="file"?name="file"??style="width:100%">
    ?<input?type="hidden"?name="easyJWebCommand"?value="upload">?
    ?<input?type="hidden"?name="parentObj">
    ?<input?type="hidden"?name="types">
     附件說明:<input?type="text"?name="intro"?size=20>

    </form>

      其中enctype="multipart/form-data"必須的,method="post"也必須。
       
    ????這個表單是一個混合表單,有type=file的文件上傳框,也有type=text或hidden的普通文本框。

    2、接收單個上傳文件的java代碼

      下面我們看看文件上傳處理模塊bbsUpload中的java代碼.

     ??com.easyjf.bbs.action.UploadAction.java
      
    ??import?org.apache.commons.fileupload.FileItem;

      public?class?UploadAction?implements?IWebAction?{
    ???public?Page?execute(WebForm?form,?Module?module)?throws?Exception?{
         FileItem file=(FileItem)form.get("file");//文件對象
    ?????????String?intro=(String)form.get("intro");//文本對象
         if(file!=null)
    ???????{
    ????????//得到上傳文件,對上傳文件進行處理,這里省略代碼N行
    ???????}
    ???}
    }?


    3、接收處理多個文件上傳的java代碼
      
     com.easyjf.bbs.action.UploadAction.java
    ??
    Iterator?it?=?form.getFileElement().keySet().iterator();
    while(it.hasNext())?{
    String?fieldName?=?(String)?it.next();//表單字段名
    FileItem?file?=?(FileItem)?form.get(fieldName);//文件對象
    if(file!=null)
    {
    //得到上傳文件,對上傳文件進行處理,這里省略代碼N行

    }

    }

    4、關于org.apache.commons.fileupload.FileItem 
     
      這是apache的開源上傳組件apache?commons-fileupload中的一個類,EasyJWeb核心引擎使用他來處理上傳文件的。
    ???通過FileItem類我們可以得到上傳文件的大小、路徑、文件名等信息,也可以通過FilteItem類的write方法把上傳文件保存到服務器中。如論壇中的代碼:


        file.write(new?File(filePath?+?fileName));
       \\示例file.write(new?File("c:\\test\up.txt"));


      詳細請看apache官方網站.地址:http://jakarta.apache.org/commons/fileupload/

    5、上傳中的注意事項

      需要對上傳文件進行過濾,以防黑客上傳如.jsp的木馬文件到服務器上。若上傳來的文件不希望用戶直接通過url訪問,則可考慮保存到Web應用程序web-inf目錄下,或者web應用程序以外的目錄。


    EasyJWeb簡介

      EasyJWeb是基于java技術,應用于WEB應用程序快速開發的MVC框架,框架設計構思來源于國內眾多項目實踐,充分借簽了當前主要流行(主流)的開源Web框架(Struts、JSF、Tapestry?、Webwork),吸取了其優點及精華,利用Velocity作為模板頁面引擎,是一個實現了頁面及代碼完全分離的MVC開發框架,是一個旨在于為中小型Web應用系統提供快速開發實踐的簡易Web框架。

      EasyJF開源團隊于2006年初才開始建設,因此當前整個開發團隊組建以及所發布的作品,都顯得極不成熟。EasyJWeb仍然處于測試階段,請廣大的Java愛好者多多批評及建議。同進也非常歡迎您能加入到我們的國產開源隊伍中。

      EasyJWeb官方網址:www.easyjf.com
    ????EasyJF團隊官方網址:www.easyjf.com?
    posted on 2006-03-28 22:35 簡易java框架 閱讀(456) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 最近免费中文字幕中文高清| 国产情侣久久久久aⅴ免费 | 久久久久亚洲精品无码网址 | caoporn成人免费公开| 97国产免费全部免费观看| 亚洲一级片免费看| 国产精品亚洲综合| 日韩吃奶摸下AA片免费观看 | 久久久久亚洲Av无码专| 好男人资源在线WWW免费| 最好免费观看韩国+日本| 亚洲人成影院在线高清| 2021在线观看视频精品免费| 亚洲色婷婷一区二区三区| a在线视频免费观看在线视频三区| 四虎成人免费观看在线网址| 亚洲日韩亚洲另类激情文学| 一级女人18毛片免费| 国产 亚洲 中文在线 字幕| 99久久国产热无码精品免费| 亚洲人成7777| 国产一级淫片视频免费看| 免费无遮挡无码视频在线观看| 亚洲日本在线观看视频| 国产免费AV片在线观看播放| 亚洲国产精品一区第二页| 精品国产污污免费网站| 久久精品7亚洲午夜a| 18禁男女爽爽爽午夜网站免费| 亚洲日本va在线观看| 国产又粗又长又硬免费视频| 国产黄在线观看免费观看不卡| 久久精品国产99精品国产亚洲性色| 嘿嘿嘿视频免费网站在线观看| 亚洲AV色欲色欲WWW| 久久亚洲国产精品五月天婷| 在线观看www日本免费网站| 亚洲国产日韩a在线播放| 亚洲免费观看视频| 精品国产免费观看| 免费A级毛片无码专区|