servlet:

private static final long FILE_MAX_SIZE = 4 * 1024 * 1024;

if (!ServletFileUpload.isMultipartContent(request)) {  
          System.out.println("失败1");
         }  
         String fileTempPath = this.getServletContext().getRealPath("/") + "filetemp";  
         File tempDir = new File(fileTempPath);  
         if (!tempDir.exists()) {  
             tempDir.mkdirs();  
         }  
         FileItemFactory factory = new DiskFileItemFactory(4096, tempDir);  
   
         ServletFileUpload sfu = new ServletFileUpload(factory);  
         sfu.setFileSizeMax(FILE_MAX_SIZE);  
   
         List<FileItem> fileItems = null;  
   
         try {  
             fileItems = sfu.parseRequest(request);  
         } catch (FileUploadException e) {  
             e.printStackTrace();  
             if (e instanceof SizeLimitExceededException) {  
              
             }  
             return;  
         }  
         if (fileItems == null || fileItems.size() == 0) {  
             System.out.println("失败2" );
             return;  
         }

Workbook rwb;
  try {
   rwb = Workbook.getWorkbook(fileItems.get(0).getInputStream());
   int sheetCount=rwb.getNumberOfSheets();
    Sheet rs=rwb.getSheet(0);
    int rows=rs.getRows(); //行
    int cols=rs.getColumns(); //列     -- getCell(列,行)
    System.out.println(rows+"-*-*-*-"+cols);
    for (int i = 2; i < rows ; i++) {
     Cell cell = rs.getCell(i, 0);
     System.out.print(rs.getCell(0, i).getContents()+"-*-");
     System.out.print(rs.getCell(1, i).getContents()+"-*-");
     System.out.print(rs.getCell(2, i).getContents()+"-*-");
     System.out.print(rs.getCell(3, i).getContents()+"-*-");
     System.out.print(rs.getCell(4, i).getContents()+"-*-");
     System.out.print(rs.getCell(5, i).getContents()+"-*-");
     System.out.print(rs.getCell(6, i).getContents()+"-*-");
     System.out.print(rs.getCell(7, i).getContents()+"-*-");
     System.out.print(rs.getCell(8, i).getContents()+"-*-");
     System.out.print(rs.getCell(9, i).getContents()+"-*-");
     System.out.println();
    }
  } catch (BiffException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }finally{
   fileItems.get(0).getInputStream().close();
   
  }

jsp:

<script type="text/javascript">
 function CheckExcel() {
  var mime = document.getElementById('Excelfile').value;
  mime = mime.toLowerCase().substr(mime.lastIndexOf("."));
  if (!(mime == ".xls")) {
   alert("请导入正确的EXCEL文件,仅支持xls格式!");
   return false;
  }
 }
</script>
    <body>
     <form action="servlet/ExcelTest" enctype="multipart/form-data" method="post" onsubmit="return CheckExcel()">
      <input type="file" name="Excelfile" onchange="CheckExcel(this)" id="Excelfile"/>

<input type="submit" value="读EXCEL"/>
     </form>
  </body>

javaweb jsp页面上传excel文件的更多相关文章

  1. java上传excel文件及解析

      java上传excel文件及解析 CreateTime--2018年3月5日16:25:14 Author:Marydon 一.准备工作 1.1 文件上传插件:swfupload: 1.2 文件上 ...

  2. activity通过流程实例id动态获取流程图并展示在jsp页面上

    提供的Service方法如下: Java /** * 获取当前任务流程图 * * @param processInstanceId * @return */ @Override public Inpu ...

  3. jsp+servlet上传excel并将数据导入到数据库表的实现方法

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  4. asp.net上传Excel文件到服务端进行读取

    1.我们IIS是使用7.5,由于在网站中上传Excel文件到服务端进行数据读取时候出现读取失败情况.一开始以为是没有按照office软件问题,其实不然,因为server是64位操作系统,如果我们要使用 ...

  5. 从数据库提取数据通过jstl显示在jsp页面上

    从数据库提取数据通过jstl显示在jsp页面上 1.ConnectDB.java连接数据库,把数据转换成list public class ConnectDB { private final stat ...

  6. ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案 try.dot.net 的正确使用姿势 .Net NPOI 根据excel模板导出excel、直接生成excel .Net NPOI 上传excel文件、提交后台获取excel里的数据

    ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案   ASP.NET Core 从2.2版本开始,采用了一个新的名为Endpoint的路由方案,与原来的方案在使用上差别不 ...

  7. Django框架(上传Excel文件并读取)

    博主今天整理下Django框架中上传Excel文件并读取 博主是要在管理平台中新增用例的维护功能,想着通过上传Excel文件来展示用例,下面是项目的路径图: 首先先建数据库模型 model.py 可以 ...

  8. Django中从本地上传excel文件并将数据存储到数据库

    Django中从本地上传excel文件并将数据存储到数据库 一.前端界面 <div class="page-container"> <form action=&q ...

  9. js上传Excel文件

    一.问题 需要在项目里添加一个上传excel文件的功能,因为其他同样的后台里面有上传文件的功能,第一反应就是想着直接用.了解了一下发现它是利用bootstrap的fileinput实现的,但是我怎么都 ...

随机推荐

  1. 发送cookie

  2. unix c 08

    信号 - signal()改变信号的处理方式.默认情况下,信号在Unix中都有自己的处理方式,如果想改变信号的处理方式,signal/sigaction 可以实现. 信号可以在关键代码处进行屏蔽,因为 ...

  3. js实现a标签超链接提交form表单的方法

    <a class="regButton"    id="saveRegister" onclick="document.getElementBy ...

  4. Android基础&进阶

    http://blog.csdn.net/liuhe688/article/details/9494411

  5. c++面试知识点

    static #include<stdio.h> #include<iostream> #include<assert.h> using namespace std ...

  6. XCode中在提示窗体中对已弃用的API接口画上红线

    当我们在XCode中写程序时会不断的出现相关API提示窗体,那敲起来是一个爽啊. 有时候会看到一些API已经弃用了被画上红色的横线.说明该接口已经被弃用,仍保留,但不建议使用,对弃用API实现画横线事 ...

  7. 01我为什么学Unity3d

    首发于游戏蛮牛论坛&&我的CSDN博客:http://blog.csdn.net/wowkk/article/details/18571055 转载请说明出处.谢谢. 本人现大学生,带 ...

  8. [Protractor] Use protractor to catch errors in the console

    For any reason, there is an error in your code, maybe something like undefined error. Protractor sti ...

  9. Linux 编译安装 apache 2.4

    在安装apache之前需要准备一些必要的依赖包 gcc安装: #yum install -y gcc gcc-c++安装: #yum install gcc-c++  apr安装: 下载包:apr-1 ...

  10. ASP.NET母版与内容页相对路径的问题

    1. 图片问题 非常好解决 <img runat="server" src="~/images/ad468x60.gif" alt="" ...