Web页面数据批量录入----使用上传组件与JXL工具包联合实现

阅读更多

JspsmartUpload可以对一般的文件进行上传,而jxl工具包提供良好的对MSExcel文件格式的读取性能,可以结合这两者在Web页面上通过Excel文件对数据进行批量录入。
这里提供一点思路,供大家参考。
    首先可以将文件上传到Web服务器的某个地方,可以根据需要任意选取,然后通过使用工具包对文件进行读取,最后删除该临时文件。
    我使用的是jspSmartUpload包的源代码编译后自己压缩而成的包,而Jxl则是在网上找到的,包的全名是jexcelapi_2_3_7,可以通过google进行搜索找到,如果需要可以与我联系。
   以下是整个最为简单的例子代码,可供大家参考:
index.jsp:

  1. <%@ page contentType="text/html; charset=GBK" %>
  2. <HTML>
  3. "white">
  4. 上载界面


  5. "POST" ACTION="/WebExcel/display.jsp" ENCTYPE="multipart/form-data">
  6.    "FILE" NAME="FILE1" SIZE="50" >
  7.    "SUBMIT" VALUE="上载">
  8. HTML>


display.jsp

  1. <%@ page contentType="text/html; charset=GBK"
  2.   language="java" import="jxl.*,com.jspsmart.upload.*" %>
  3. "mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload" />
  4. <HTML>
  5. "white">
  6. Excel文件内容显示


  7. <%
  8.     int count=0;
  9.     mySmartUpload.initialize(pageContext);
  10.     mySmartUpload.upload();
  11.     for (int i=0;i
  12.         com.jspsmart.upload.File myFile = 
  13.                      mySmartUpload.getFiles().getFile(i);
  14.         if (!myFile.isMissing()) {
  15.             myFile.saveAs("/upload/"+myFile.getFileName());
  16.         }
  17.     }
  18.     int ROW = 4;
  19.     int COLUMN = 3;
  20.     ServletContext servletContext = pageContext.getServletContext();
  21.     java.io.File xmlFile =
  22.         new java.io.File(servletContext.getRealPath("upload/Book1.xls"));
  23.     Cell cell = null;
  24.         try{
  25.             Workbook workbook = Workbook.getWorkbook(xmlFile);
  26.             Sheet sheet = workbook.getSheet(0);
  27.         out.println("");
  28.             for(int j=0;j
  29.                 out.println("");
  30.                 for(int i=0;i
  31.                 out.println("");
  32.                     cell = sheet.getCell(i,j);
  33.                     out.print(cell.getContents());
  34.                 out.println("");
  35.                 }
  36.                 out.println("");
  37.             }
  38.                 out.println("");
  39.                 workbook.close();
  40.         xmlFile.delete();
  41.         }catch(Exception e){
  42.             System.out.println(e);
  43.               }
  44. %>
  45. HTML>


实现这一功能的前提是Excel文件格式必须事先确定。

你可能感兴趣的:(Web页面数据批量录入----使用上传组件与JXL工具包联合实现)