Extjs文件上传

简介:

1、将文件上传到FileLoadServlet处理

 
  1. Ext.onReady(function() { 
  2.     var form = new Ext.form.FormPanel({ 
  3.         labelAlign : 'right', 
  4.         title : 'form', 
  5.         labelWidth : 50, 
  6.         buttonAlign : 'center', 
  7.         frame : true, 
  8.         fileUpload : true, 
  9.         url : 'FileLoadServlet', 
  10.         width : 280, 
  11.  
  12.         items : [ { 
  13.             xtype : 'textfield', 
  14.             fieldLabel : '文本框', 
  15.             name : 'file', 
  16.             inputType : 'file' 
  17.         } ], 
  18.         buttons : [ { 
  19.             text : '提交', 
  20.             handler : function() { 
  21.                 form.getForm().submit({ 
  22.                     success : function(form, action) { 
  23.                         Ext.Msg.alert('信息', action.result.msg); 
  24.                     }, 
  25.                     failure : function() { 
  26.                         Ext.Msg.alert('错误', '失败'); 
  27.                     } 
  28.                 }); 
  29.             } 
  30.         } ] 
  31.     }); 
  32.     form.render("form"); 
  33.  
  34. }); 

2、servlet类处理

(1)web.xml

 
  1. <servlet> 
  2.     <servlet-name>FileLoadServlet</servlet-name> 
  3.     <servlet-class>com.alibaba.upload.FileLoadServlet</servlet-class> 
  4. </servlet> 
  5. <servlet-mapping> 
  6.     <servlet-name>FileLoadServlet</servlet-name> 
  7.     <url-pattern>/FileLoadServlet</url-pattern> 
  8. </servlet-mapping> 

(2)具体的类处理

 
  1. FileItemFactory factory = new DiskFileItemFactory(); 
  2.    ServletFileUpload fileload = new ServletFileUpload(factory); 
  3.  
  4.    fileload.setSizeMax(4194304); 
  5.    try { 
  6.  
  7.        List<FileItem> fileItems = (List<FileItem>) fileload.parseRequest(request); 
  8.        Iterator<FileItem> iter = fileItems.iterator(); // 依次处理每个上传的文件 
  9.  
  10.        while (iter.hasNext()) { 
  11.            FileItem item = (FileItem) iter.next();// 忽略其他不是文件域的所有表单信息 
  12.            if (!item.isFormField()) { 
  13.                String name = item.getName();//获取上传文件名,包括路径 
  14.                System.out.println(name); 
  15.  
  16.                if (name != null) { 
  17.  
  18.                    File filetoserver = new File("D:\\", name); 
  19.  
  20.                    item.write(filetoserver); 
  21.  
  22.                    System.out.println("文件:" + name + "上传成功,大小是" + item.getSize()); 
  23.  
  24.                } 
  25.            } 
  26.        } 
  27.    } catch (Exception e) { 
  28.    } 
  29.    response.getWriter().print("{success:true,msg:'上传成功'}"); 

【注意】

1、需要加入fileupload包,由于其使用的common-io包,同时也需要加入其中。

 


本文转自 tianya23 51CTO博客,原文链接:http://blog.51cto.com/tianya23/815163,如需转载请自行联系原作者

相关文章
|
前端开发
SpringMVC文件上传、文件下载多文件上传及jrebel的使用与配置3
SpringMVC文件上传、文件下载多文件上传及jrebel的使用与配置3
77 0
|
前端开发 文件存储 数据库
SpringMVC文件上传、文件下载多文件上传及jrebel的使用与配置1
SpringMVC文件上传、文件下载多文件上传及jrebel的使用与配置1
110 0
SpringMVC文件上传、文件下载多文件上传及jrebel的使用与配置2
SpringMVC文件上传、文件下载多文件上传及jrebel的使用与配置2
94 0
|
10月前
uploadify组件文件上传那些事
uploadify组件文件上传那些事
94 0
|
存储 前端开发 Java
SpringMVC的文件上传&文件下载&多文件上传---详细介绍
SpringMVC的文件上传&文件下载&多文件上传---详细介绍
83 0
|
JavaScript 前端开发 数据库
JavaWeb18(文件上传&富文本编辑器)
JavaWeb18(文件上传&富文本编辑器)
|
前端开发 应用服务中间件
Struts2实现单文件上传,多文件上传与下载(十)中
Struts2实现单文件上传,多文件上传与下载(十)
125 0
Struts2实现单文件上传,多文件上传与下载(十)中
Struts2实现单文件上传,多文件上传与下载(十)下
Struts2实现单文件上传,多文件上传与下载(十)
239 0
Struts2实现单文件上传,多文件上传与下载(十)下
|
缓存 Java Apache
Struts2实现单文件上传,多文件上传与下载(十)上
Struts2实现单文件上传,多文件上传与下载(十)
277 0
Struts2实现单文件上传,多文件上传与下载(十)上
|
JavaScript 前端开发 应用服务中间件
SpringMVC的单文件上传,多文件上传和下载文件(十二)下
SpringMVC的单文件上传,多文件上传和下载文件(十二)下
310 0
SpringMVC的单文件上传,多文件上传和下载文件(十二)下