首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

extjs 文件下传

2012-12-22 
extjs 文件上传功能要求:在mastplan页面添加按钮,实现上传excel文件的功能,并在保存之前读取文件内容将其

extjs 文件上传

功能要求:

在mastplan页面添加按钮,实现上传excel文件的功能,并在保存之前读取文件内容将其保存到数据库里面。

 

具体实现:

 

^_^ 先闪闪图片吧。

extjs 文件下传



extjs 文件下传



Jsp页面代码:

在tbar工具栏中添加一按钮: 单击此按钮,弹出一个上传文件的窗口



var win_upload = new Ext.Window({title : 'UploadFile',width :450,height : 180,modal : true,x : 100,y : 50,layout : 'form',autoScroll : true,constrain : true,bodyStyle : 'padding:10px 10px 10px 10px;',items:form,buttons : [{text : '確認上傳',      handler : function() {       if (form.form.isValid()) {        if(Ext.getCmp('userfile').getValue() == ''){         Ext.Msg.alert('溫馨提示','請選擇要上傳的文件');         return;        }        Ext.MessageBox.show({           title : '請稍後....',           msg : '文件正在上傳中....',           progressText : '',           width : 300,           progress : true,           closable : false,           animEl : 'loding'        });        form.getForm().submit({url : 'upload',method : 'POST',success : function(form, action) {Ext.Msg.alert('成功','恭喜!文件上傳成功!'+action.result.success);win_upload.hide();         },         failure : function(form, action) {          Ext.Msg.alert('錯誤',"文件上傳失敗,請重新操作!");         }        })       }      }}, {text : 'Close',handler : function() {win_upload.hide();}}],closable: false,draggable: false,resizable: false});Java代码:在保存文件之前获取流信息,并将其读出。获取excel内容package javaservlets.production.uploadexcel;import java.io.IOException;import java.io.InputStream;import java.util.List;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import jxl.Cell;import jxl.Sheet;import jxl.Workbook;import jxl.read.biff.BiffException;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;import org.json.JSONException;import org.json.JSONObject;public class Upload extends HttpServlet {private static final long serialVersionUID = 6777945010008132796L;@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {super.doGet(req, resp);System.out.println("doGet");resp.sendRedirect("/upload/index.jsp");}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) {System.out.println("--------------------------------- upload ---------------------------------------------------");InputStream is = null;Workbook workbook = null;try {List<FileItem> items = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(req);for (FileItem item : items) {if (item.isFormField()) {System.out.println(item.getFieldName());System.out.println(item.getString());} else {System.out.println(item.getFieldName());is = item.getInputStream();workbook = Workbook.getWorkbook(is);}}   Sheet[] sheetNum = workbook.getSheets();System.out.println("----------------------------------打印sheet的個數:"+sheetNum.length+"----------------------------");       Sheet sheet = workbook.getSheet(0);       Cell cell = null;       int columnCount = sheet.getColumns();       int rowCount = sheet.getRows();       for (int i = 0; i < rowCount; i++) {           for (int j = 0; j < columnCount; j++) {              cell = sheet.getCell(j, i);              System.out.print(cell.getContents());           }           System.out.println(" \n");       }           resp.setContentType("text/html");          JSONObject jObject = new JSONObject();   try {jObject.put("success", "true");} catch (JSONException e) {e.printStackTrace();try {jObject.put("success", "false");} catch (JSONException e1) {e1.printStackTrace();}}       resp.getWriter().print(jObject.toString());  // resp.sendRedirect("/upload/index.jsp");   workbook.close();} catch (FileUploadException e) {e.printStackTrace();} catch (BiffException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} }}


热点排行