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

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

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

    隨筆 - 45, 文章 - 2, 評論 - 11, 引用 - 0
    數據加載中……

    commons-FileUpload上傳過程

    1、

    ServletFileUpload.isMultipartContent(request)

    檢測request中是否包含有multipart內容

    2、如果有,生成DiskFileItemFactory工廠將進行相關的設置

             DiskFileItemFactory factory = new DiskFileItemFactory();
            // maximum size that will be stored in memory
            factory.setSizeThreshold(maxMemSize);
            // Location to save data that is larger than maxMemSize.
            factory.setRepository(new File("d:/"));

    3、生成上傳ServletFileUpload類,并將DiskFileFactory工廠傳給它,并對ServletFileUpload進行配置

           // Create a new file upload handler
            ServletFileUpload upload = new ServletFileUpload(factory);
            // maximum file size to be uploaded.
            upload.setSizeMax(maxFileSize);

    4、從request得到上傳的文件列表

                // Parse the request to get file items.
                List fileItems = upload.parseRequest(request);

                // Process the uploaded file items
                Iterator i = fileItems.iterator();

    5、處理文件:寫入或者其他操作

    while (i.hasNext()) {
                    FileItem fi = (FileItem) i.next();
                    if (!fi.isFormField()) {
                        // Get the uploaded file parameters
                        String fieldName = fi.getFieldName();
                        String fileName = fi.getName();
                        String contentType = fi.getContentType();
                        boolean isInMemory = fi.isInMemory();
                        long sizeInBytes = fi.getSize();
                        // Write the file
                        if (fileName.lastIndexOf("\\") >= 0) {
                            file = new File(
                                    filePath
                                            + fileName.substring(fileName
                                                    .lastIndexOf("\\")));
                        } else {
                            file = new File(
                                    filePath
                                            + fileName.substring(fileName
                                                    .lastIndexOf("\\") + 1));
                        }
                        fi.write(file);
                        out.println("Uploaded Filename: " + fileName + "<br>");
                    }
                }

    }

     

    說明:

    FileItem接口是對用戶上傳文件的封裝

    DiskFileItemFactory實現了FileItemFactory接口,主要方法有public FileItem createItem(String fieldName, String contentType, boolean isFormField, String fileName)

    ServletFileUpload從FileUpload繼承,而FileUpload又從FileUploadBase繼承,功能:分析傳入的request對象、得到文件列表FileItemIterator……

    posted on 2011-03-23 13:01 jack zhai 閱讀(1553) 評論(0)  編輯  收藏 所屬分類: 輕量級框架學習java web


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


    網站導航:
     
    主站蜘蛛池模板: 亚洲免费在线视频播放| 亚洲国产成人久久笫一页| 国产成人综合亚洲一区| 国产亚洲色视频在线| 24小时在线免费视频| 最刺激黄a大片免费网站| 国产亚洲玖玖玖在线观看| 香蕉97超级碰碰碰免费公| 老妇激情毛片免费| 久久亚洲AV成人无码国产| 性无码免费一区二区三区在线| 超清首页国产亚洲丝袜| 麻豆视频免费播放| fc2免费人成在线视频| 亚洲人成无码网WWW| 国产99久久久国产精免费| 亚洲日本乱码一区二区在线二产线| 免费一级做a爰片久久毛片潮喷| 美国毛片亚洲社区在线观看| 亚洲AV成人片色在线观看高潮 | 又大又硬又爽免费视频| 一区二区三区福利视频免费观看| 国产亚洲精品美女| 亚洲一区免费视频| 亚洲一区二区三区首页| 亚洲国产精品综合久久网络| 成人网站免费观看| 69影院毛片免费观看视频在线| eeuss草民免费| 亚洲妇女无套内射精| 四虎永久在线精品免费影视 | 亚洲AV成人片色在线观看高潮| 免费一级毛片在线播放不收费| 91久久成人免费| 光棍天堂免费手机观看在线观看| 亚洲伊人tv综合网色| JLZZJLZZ亚洲乱熟无码| 国产高清免费观看| 24小时日本在线www免费的| 最近中文字幕mv免费高清视频8 | 亚洲免费一区二区|