濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > JSP組件commons-fileupload實(shí)現(xiàn)文件上傳

JSP組件commons-fileupload實(shí)現(xiàn)文件上傳

熱門標(biāo)簽:地圖標(biāo)注市場(chǎng)怎么樣 泰州泰興400電話 怎么申請(qǐng) 南昌市地圖標(biāo)注app 南京新思維電話機(jī)器人 聊城智能電銷機(jī)器人外呼 如何用中國(guó)地圖標(biāo)注數(shù)字點(diǎn) 好操作的電話機(jī)器人廠家 百度地圖添加標(biāo)注圖標(biāo)樣式 企業(yè)怎么在聯(lián)通申請(qǐng)400電話

本文實(shí)例為大家分享了JSP使用commons-fileupload實(shí)現(xiàn)文件上傳代碼,供大家參考,具體內(nèi)容如下

1、準(zhǔn)備:

將commons-fileupload-1.1.zip和commons-io-1.1.zip復(fù)制到"\WEB-INF\lib"目錄下

2、首先是Servlet: FileUpload.java

package servlet;

import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.*;
import java.util.regex.Pattern;
import java.util.regex.Matcher;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

public class FileUpload extends HttpServlet {
 
 private String uploadPath="E:\\addnetFile\\";//要上傳文件的目錄
 private File tempPath=new File("E:\\tempFile\\");//存放上傳的文件的目錄
 
 public void doGet(HttpServletRequest request, HttpServletResponse response)
  throws ServletException, IOException {
 }

 public void doPost(HttpServletRequest request, HttpServletResponse response)
  throws ServletException, IOException {
 response.setContentType("text/html;charset=GB2312");
 response.setCharacterEncoding("gb2312");
 PrintWriter out=response.getWriter();
 out.println("請(qǐng)求內(nèi)容的長(zhǎng)度為:"+request.getContentLength());
 out.println("請(qǐng)求內(nèi)容的類型為:"+request.getContentType());
 
 DiskFileItemFactory factory=new DiskFileItemFactory();
 factory.setRepository(tempPath);
 factory.setSizeThreshold(4096);
 
 ServletFileUpload upload=new ServletFileUpload(factory);
 upload.setSizeMax(1000000);
 List?> fileitems=null;
 try{
  fileitems=upload.parseRequest(request);
  Iterator?> iterator=fileitems.iterator();
  String regex=".+\\\\(.+)$";
  String[] errortype={".exe",".com",".cgi",".asp"};
  Pattern p=Pattern.compile(regex);
  while(iterator.hasNext()){
  FileItem item=(FileItem) iterator.next();
  if(!item.isFormField()){
   String name=item.getName();
   long size=item.getSize();
   if(name==null||name.equals("")size==0)
   continue;
   Matcher m=p.matcher(name);
   if(m.find()){
   for(int temp=0;temperrortype.length;temp++){
    if(m.group(1).endsWith(errortype[temp]))
    throw new IOException(name+":wrong type");
   }
   try{
    item.write(new File(tempPath,m.group(1)));
    out.println(name+" "+size+"br/>");
    out.println("上傳成功");
   }catch(Exception e){
    out.println("333"+e);
   } 
   }
   else{
   throw new IOException("fail to upload");
   }
   
  }
  }
 }catch(IOException e){
  out.println("222"+e);
 }
 catch(FileUploadException e1){
  e1.printStackTrace();
  out.println("111"+e1);
 }
 }

 public void init() throws ServletException {
 if(!new File(uploadPath).isDirectory())
  new File(uploadPath).mkdir();
 if(!tempPath.isDirectory())
  tempPath.mkdir();
 }
 
 public void destroy(){
 super.destroy();
 }

}

3、其次是html:Uploadfile.html

!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
html>
 head>
  title>Uploadfilel.html/title>
 
  meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
  meta http-equiv="description" content="this is my page">
  meta http-equiv="content-type" content="text/html; charset=UTF-8">
  
  !--link rel="stylesheet" type="text/css" href="./styles.css">-->

 /head>
 
 body>
  form action="/Firstjsp/servlet/FileUpload" method="post" enctype="multipart/form-data" name="form1">
  input type="file" name="file"/>
  input type="submit" name="submit" value="upload"/>
  /form>
  form action="/Firstjsp/servlet/FileUpload" method="post" enctype="multipart/form-data" name="uploadform">
  table>
  tr>
   td>
   文件1:input type="file" name="X" size="40"/>
   /td>
  /tr>
  tr>
   td>
   文件2:input type="file" name="Y" size="40"/>
   /td>
  /tr>
  tr>
   td>
   文件3:input type="file" name="Z" size="40"/>
   /td>
  /tr>
  /table>
  input type="submit" name="upload" value="開始上傳"/> 
  /form>
 /body>
/html>

4、最后是配置web.xml

servlet>
  description>This is the description of my J2EE component/description>
  display-name>This is the display name of my J2EE component/display-name>
  servlet-name>FileUpload/servlet-name>
  servlet-class>servlet.FileUpload/servlet-class>
 /servlet>
servlet-mapping>
  servlet-name>FileUpload/servlet-name>
  url-pattern>/servlet/FileUpload/url-pattern>

首先運(yùn)行html,servlet處理上傳請(qǐng)求

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Apache commons fileupload文件上傳實(shí)例講解
  • java組件commons-fileupload實(shí)現(xiàn)文件上傳、下載、在線打開
  • Java組件commons fileupload實(shí)現(xiàn)文件上傳功能
  • JavaEE組件commons-fileupload實(shí)現(xiàn)文件上傳、下載
  • java組件commons-fileupload文件上傳示例
  • Apache Commons fileUpload文件上傳多個(gè)示例分享
  • java組件commons-fileupload實(shí)現(xiàn)文件上傳
  • commons fileupload實(shí)現(xiàn)文件上傳的實(shí)例代碼
  • java組件fileupload文件上傳demo
  • java使用common-fileupload實(shí)現(xiàn)文件上傳

標(biāo)簽:白銀 自貢 吉林 臨汾 開封 烏蘭察布 山南 銅川

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《JSP組件commons-fileupload實(shí)現(xiàn)文件上傳》,本文關(guān)鍵詞  JSP,組件,commons-fileupload,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《JSP組件commons-fileupload實(shí)現(xiàn)文件上傳》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于JSP組件commons-fileupload實(shí)現(xiàn)文件上傳的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    达拉特旗| 定边县| 天气| 榆树市| 肇源县| 德令哈市| 华坪县| 荣昌县| 松原市| 天门市| 隆化县| 平乡县| 定陶县| 永平县| 金溪县| 咸阳市| 芮城县| 泸州市| 印江| 如皋市| 什邡市| 吴桥县| 锡林郭勒盟| 和平区| 兰溪市| 铜鼓县| 聊城市| 青浦区| 临海市| 巴里| 湘阴县| 屏山县| 庆城县| 花垣县| 威海市| 柘荣县| 墨竹工卡县| 洛宁县| 桃园市| 泰州市| 莲花县|