• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    JSP组件commons-fileupload实现文件上传

    本文实例为大家分享了JSP使用commons-fileupload实现文件上传代码,供大家参考,具体内容如下

    1、准备:

    将commons-fileupload-1.1.zip和commons-io-1.1.zip复制到"\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("请求内容的长度为:"+request.getContentLength());
     out.println("请求内容的类型为:"+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>
    

    首先运行html,servlet处理上传请求

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

    您可能感兴趣的文章:
    • Apache commons fileupload文件上传实例讲解
    • java组件commons-fileupload实现文件上传、下载、在线打开
    • Java组件commons fileupload实现文件上传功能
    • JavaEE组件commons-fileupload实现文件上传、下载
    • java组件commons-fileupload文件上传示例
    • Apache Commons fileUpload文件上传多个示例分享
    • java组件commons-fileupload实现文件上传
    • commons fileupload实现文件上传的实例代码
    • java组件fileupload文件上传demo
    • java使用common-fileupload实现文件上传
    上一篇:用JS实现购物网站商品放大镜效果
    下一篇:jsp 判断list是否包含string的实现方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    JSP组件commons-fileupload实现文件上传 JSP,组件,commons-fileupload,