1. 程式人生 > >28 檔案上傳、檔案下載

28 檔案上傳、檔案下載

一、概述

1.1

  將客戶端的檔案通過io流傳輸到伺服器上

1.2 檔案上傳技術

    JspSmartUpload  : 應用在jsp技術檔案上傳

    FileUpload : 要學習的檔案上傳的元件

    Servlet3.0------->只支援servlet3.0之後

    框架也提供了檔案上傳的元件

1.3 檔案上傳原理

抓包

原始碼————>maven專案

檔案上傳、下載參考

    1. Api的學習

      1. DiskFileItemFactory

構造方法:

     DiskFileItemFactory(int sizeThreshold, java.io.File repository) 

引數:

     int sizeThreshold : 設定緩衝區的大小

    File repository : 臨時目錄

成員方法:

     setRepository(java.io.File repository) 

      1. ServletFileUpload : 解析request物件的

構造方法:

成員方法:

解析request物件

List<FileItem>

parseRequest(HttpServletRequest request) 

判斷enctype屬性設定是否為multipart/form-data

static boolean

isMultipartContent(HttpServletRequest request) 

如果獲取檔名出現亂碼問題,就可以使用下面方法進行設定

void setHeaderEncoding(String encoding)

      1. FileItem : 輸入項(可能是普通輸入項,也可能是檔案上傳輸入項)

普通輸入項:

         獲取欄位的名稱

獲取文字輸入內容

String

getString(java.lang.String encoding) 

檔案上傳項:

獲取檔名稱

獲取檔案內容