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. goldengate介绍

    Oracle Golden Gate软件是一种基于日志的结构化数据复制备份软件,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数据库同步. ...

  2. LCD的背光及觸摸屏

    液晶的发现可追溯到19 世纪末,1888 年被奥地利植物学家发现.它是一种在一定温度范围内呈现既不同于固态.液态,又不同于气态的特殊物质态.既具有晶体所具有的各向异性造成的双折射性,又具有液体所特有的 ...

  3. haproxy简单负载均衡搭建

    最近对负载均衡进行搭建具体方法如下: haproxy 修改部分(haproxy-cfg.cfg) global daemon maxconn 4500 defaults mode http timeo ...

  4. IOS开发错误提示原因集合-----长期更新

    "[__NSCFConstantString size]: unrecognized selector sent to instance." =>将NSString类型的参数 ...

  5. spftlayer 安装及简单使用

    1,yum -y install python-pip; pip(Python packet index);

  6. 浅谈JS数据类型存储问题

    背景       一个经典的问题,先抛出来给大伙看看: var a = "黑MAO"; var b = a; var c = new Object(); var d = c; a ...

  7. LitJson处理Json

    LitJSON是一个.NET平台下处理JSON格式数据的类库,小巧.快速.它的源代码使用C#编写,可以通过任何.Net平台上的语言进行调用,目前最新版本为LitJSON 0.9. 下载地址: http ...

  8. 使用Xshell连接Ubuntu

    使用Xshell连接Ubuntu Xshell是一个安全终端模拟软件,可以进行远程登录.我使用XShell的主要目的是在Windows环境下登录Linux终端进行编码,非常方便.本文简单介绍下它的使用 ...

  9. Hacker(15)----嗅探原理

    嗅探指窃听网络中流经的数据包,这里的网络一般指用集线器或路由器组建的局域网.通过嗅探并解析数据包,便可知道数据包中的信息,一旦含有账户密码等隐私信息就可能造成个人资金损失. 嗅探数据包无法通过输入命令 ...

  10. zabbix server is not running: the information displayed may not be current

    一.1.关闭selinux及防火墙 2.在/etc/hosts文件里加入ip及对应的主机名. 3.修改配置文件:zabbix.conf.php /opt/data/apache2/htdocs/zab ...