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

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

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

    用cos進(jìn)行文件上傳

    作者:陳萬(wàn)飛

    在jsp中實(shí)現(xiàn)文件上傳,可用的類庫(kù)很多,比如有著名的jspsmart公司SmartUpload,struts里面也有。我這里說(shuō)說(shuō)cos,它是O'Reilly公司的,O'Reilly的圖書(shū)是很8錯(cuò)的,這個(gè)上傳的組件也做得很棒,最重要的是,它是open source的。

    1. 下載最新的cos包(http://www.servlets.com/cos/index.html),加入到你的classpath中。

    2. 編寫(xiě)一個(gè)需要上傳文件的jsp,為了方便,我就用一個(gè)簡(jiǎn)單的htm文件了,在這個(gè)頁(yè)面中,我們讓用戶一次可以上傳3個(gè)文件。
      /////////////////////upload.htm////////////////////////////////////
      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
      "http://www.w3.org/TR/html4/loose.dtd">
      <html>
      <head>
      <meta http-equiv="Content-Type" content="text/html;charset=gb2312">
      <title>無(wú)標(biāo)題文檔</title>
      </head>
      
      <body>
      <!-- enctype的值很重要,upload.jsp為處理上傳的jsp-->
      <form name="form1"  method="post" enctype="multipart/form-data" 
      action="upload.jsp">
      <p>
        <input name="file1" type="file">
      </p>
      <p>
        <input name="file2" type="file">
      </p>
      <p>  <input name="file3" type="file">
      </p>
      <p>
        <input type="submit" name="Submit" value="上傳">
      </p>
      </form >
      
      </body>
      </html>
      
    3. 在c:\下建一個(gè)目錄c:\upload,用來(lái)存放上傳的文件。

    4. 寫(xiě)一個(gè)jsp或者servlet來(lái)實(shí)現(xiàn)上傳,我這里用一個(gè)叫upload.jsp,這樣就不用配置web.xml,呵呵,比較懶的說(shuō)。
      ////////////////////////////upload.jsp////////////////////////
      
      <%@page import="java.io.*"%>
      <%@page import="com.oreilly.servlet.MultipartRequest"%>
      <%@page import="com.oreilly.servlet.multipart.CoverFileRenamePolicy"%>
      <%@page contentType="text/html; charset=gb2312" %>
      <%
      //文件上傳后,保存在c:\\upload
      String saveDirectory ="c:\\upload";
      //每個(gè)文件最大5m,最多3個(gè)文件,所以...
      int maxPostSize =3 * 5 * 1024 * 1024 ;
      //response的編碼為"gb2312",同時(shí)采用缺省的文件名沖突解決策略,實(shí)現(xiàn)上傳
      MultipartRequest multi =
             new MultipartRequest(request, saveDirectory, maxPostSize,
                                  "gb2312");
      
      //輸出反饋信息
       Enumeration files = multi.getFileNames();
           while (files.hasMoreElements()) {
              System.err.println("ccc");
             String name = (String)files.nextElement();
             File f = multi.getFile(name);
             if(f!=null){
               String fileName = multi.getFilesystemName(name);
               String lastFileName= saveDirectory+"\\" + fileName;
               out.println("上傳的文件:"+lastFileName);
               out.println("<hr>");
      
             }
           }
      
      %>
      <meta http-equiv="Content-Type" content="text/html;charset=gb2312">
      
    5. 最后把這2個(gè)文件發(fā)布到你的服務(wù)器就行了。上傳文件就搞定啦,以后你想在你郵件系統(tǒng)里面嵌入發(fā)送附件的功能,用這個(gè)來(lái)做上傳也不錯(cuò)啊。

    最后,希望這篇文章對(duì)你有所啟發(fā),如有錯(cuò)誤,敬請(qǐng)批評(píng)指正!

    參考資料

    http://macspeed.net/coursejsp/ch07/ch0702.html

    posted on 2005-11-27 19:01 miracle 閱讀(130) 評(píng)論(0)  編輯  收藏


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導(dǎo)航

    統(tǒng)計(jì)

    常用鏈接

    留言簿(1)

    我參與的團(tuán)隊(duì)

    隨筆檔案(1)

    文章檔案(5)

    搜索

    最新評(píng)論

    主站蜘蛛池模板: 精品无码一级毛片免费视频观看| 精品国产亚洲AV麻豆| eeuss影院免费92242部| 四虎影视永久免费观看网址| 亚洲精品无码久久久久APP | 亚洲小说图区综合在线| 在人线av无码免费高潮喷水| 亚洲人成片在线观看| 在线观看免费人成视频色9| 精品亚洲国产成人| 免费的涩涩视频在线播放| 日韩亚洲翔田千里在线| 丁香五月亚洲综合深深爱| 国产拍拍拍无码视频免费| 亚洲一本综合久久| 中文字幕无码不卡免费视频| 亚洲国产成人综合精品| 亚洲无码高清在线观看| 免费一级不卡毛片| 精品久久久久久亚洲精品| 日本a级片免费看| 久青草视频在线观看免费| 久久久久亚洲精品日久生情| 成年人性生活免费视频| 老湿机一区午夜精品免费福利| 久久久久亚洲AV成人网人人网站| 免费观看成人久久网免费观看| 亚洲成人在线免费观看| 日批日出水久久亚洲精品tv| 免费网站观看WWW在线观看| 亚洲最大免费视频网| 亚洲国产黄在线观看| 久久精品乱子伦免费| 亚洲经典千人经典日产| 丝袜熟女国偷自产中文字幕亚洲| 99在线在线视频免费视频观看| 亚洲国产精品无码久久| 亚洲精品你懂的在线观看| 成年女人毛片免费播放人 | 麻豆亚洲AV成人无码久久精品| 亚洲免费人成在线视频观看|