1. 程式人生 > >Java中的文件上傳和下載

Java中的文件上傳和下載

獲取 https res 文件內容 tty type() val name 表單

文件上傳原理:

  早期的文件上傳機制:

    在TCP/IP中。最早出現的文件上傳機制是FTP。他是將文件由客戶端發送到服務器的標準機制。

  jsp中的文件上傳機制:

    在jsp編程中不能使用FTP的方法來上傳文件,這是由jsp運行機制所決定的。jsp中通過將表單元素設置Method="post" enctype="multipart/form-data" 屬性,讓表單以二進制編碼的方式提交,在接收次請求的Servelet中用二進制流來獲取內容,從而實現文件的上傳。

    表單的enctype屬性:

      application/x-www-form-urlencoded:默認編碼方式,它只處理表單域裏的value屬性值,采用這種編碼方式的表單會將表單域的值處理成URL編碼的方式。

      multipart/form-data:這種編碼方式的表單會以二進制流的方式來處理表單數據,這種編碼方式會把文件域制定文件的內容也封裝到請求參數裏。

      text/plain:這種方式主要適用於直接通過表單發送郵件的方式。

文件下載原理:

  setp1:通過HttpServletResponse.setContentType()方法設置Content-Type頭字段的值,來設置MIME類型,告訴瀏覽器應該使用那種方式來響應我們的返回的信息,例如設置為:"application/octet-stream" 或 "application/x-msdownload"等。

  step2:

通過HttpServletResponse.setHeader()方法設置Content-Disposition頭的值為 "attachment;filename= 文件名"。

  step3:讀取下載文件,調用HttpServletResponse.getOutputStream()方法返回的ServletOutputStream對象來向客戶端寫入附件文件內容。

  

Java中的文件上傳和下載