日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
JSPServlet文件上傳的實(shí)現(xiàn)淺析

JSP Servlet文件上傳的實(shí)現(xiàn)首先就是環(huán)境和軟件的準(zhǔn)備:

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比海北州網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式海北州網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋海北州地區(qū)。費(fèi)用合理售后完善,十余年實(shí)體公司更值得信賴。

common-fileupload組件

下載地址:http://jakarta.apache.org/commons/fileupload/

下載后解壓zip包,將commons-fileupload-1.0.jar復(fù)制到tomcat的webapps\你的webapp\WEB-INF\lib\下

Create a servlet

 
 
 
  1. import java.io.*;
  2. import java.util.*;
  3. import javax.servlet.*;
  4. import javax.servlet.http.*;
  5. import org.apache.commons.fileupload.*;
  6. public class Upload extends HttpServlet {
  7.     private String uploadPath = "C:\\upload\\"; // 用于存放上傳文件的目錄
  8.     private String tempPath = "C:\\upload\\tmp\\"; // 用于存放臨時(shí)文件的目錄
  9. public void doPost(HttpServletRequest request, HttpServletResponse response)
  10.     throws IOException, ServletException
  11. {
  12.     try {
  13.         DiskFileUpload fu = new DiskFileUpload();
  14.         // 設(shè)置最大文件尺寸,這里是4MB
  15.         fu.setSizeMax(4194304);
  16.         // 設(shè)置緩沖區(qū)大小,這里是4kb
  17.         fu.setSizeThreshold(4096);
  18.         // 設(shè)置臨時(shí)目錄:
  19.         fu.setRepositoryPath(tempPath);
  20.         // 得到所有的文件:
  21.         List fileItems = fu.parseRequest(request);
  22.         Iterator i = fileItems.iterator();
  23.         // 依次處理每一個(gè)文件:
  24.         while(i.hasNext()) {
  25.             FileItem fi = (FileItem)i.next();
  26.             // 獲得文件名,這個(gè)文件名包括路徑:
  27.             String fifileName = fi.getName();
  28.             if(fileName!=null) {
  29.                 // 在這里可以記錄用戶和文件信息
  30.                 // ...
  31.                 // 寫入文件a.txt,你也可以從fileName中提取文件名:
  32.                 fi.write(new File(uploadPath + "a.txt"));
  33.             }
  34.         }
  35.         // 跳轉(zhuǎn)到上傳成功提示頁(yè)面
  36.     }
  37.     catch(Exception e) {
  38.         // 可以跳轉(zhuǎn)出錯(cuò)頁(yè)面
  39.     }
  40. }
  41. }

當(dāng)Servlet收到瀏覽器發(fā)出的Post請(qǐng)求后,在doPost()方法中實(shí)現(xiàn)文件上傳。以下是示例代碼:

如果要在配置文件中讀取指定的上傳文件夾,可以在init()方法中執(zhí)行:

 
 
 
  1. public void init() throws ServletException {
  2.     uploadPath = ....
  3.     tempPath = ....
  4.     // 文件夾不存在就自動(dòng)創(chuàng)建:
  5.     if(!new File(uploadPath).isDirectory())
  6.         new File(uploadPath).mkdirs();
  7.     if(!new File(tempPath).isDirectory())
  8.         new File(tempPath).mkdirs();
  9. }

Servlet文件上傳之配置Servlet,用記事本打開tomcat\webapps\你的webapp\WEB-INF\web.xml,沒(méi)有的話新建一個(gè)。典型配置如下:

 
 
 
  1. ﹤?xml version="1.0" encoding="ISO-8859-1"?﹥
  2. ﹤!DOCTYPE web-app
  3.     PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
  4.     "http://java.sun.com/dtd/web-app_2_3.dtd"﹥
  5. ﹤web-app﹥
  6.     ﹤servlet﹥
  7.         ﹤servlet-name﹥Upload﹤/servlet-name﹥
  8.         ﹤servlet-class﹥Upload﹤/servlet-class﹥
  9.     ﹤/servlet﹥
  10.     ﹤servlet-mapping﹥
  11.         ﹤servlet-name﹥Upload﹤/servlet-name﹥
  12.         ﹤url-pattern﹥/fileupload﹤/url-pattern﹥
  13.     ﹤/servlet-mapping﹥
  14. ﹤/web-app﹥

Servlet文件上傳之收尾:配置好Servlet后,啟動(dòng)Tomcat,寫一個(gè)簡(jiǎn)單的html測(cè)試:

 
 
 
  1. ﹤form action="fileupload" method="post" enctype="multipart/form-data" name="form1"﹥
  2.   ﹤input type="file" name="file"﹥
  3.   ﹤input type="submit" name="Submit" value="upload"﹥
  4. ﹤/form﹥

注意action="fileupload"其中fileupload是配置servlet時(shí)指定的url-pattern。

那么JSP Servlet文件上傳的實(shí)現(xiàn)就完成了,在開發(fā)思路上你是否有了一點(diǎn)變化呢?


當(dāng)前文章:JSPServlet文件上傳的實(shí)現(xiàn)淺析
文章出自:http://www.dlmjj.cn/article/cdhhiei.html