jsp内容忽略,仅写个出发按钮:
         <button style="width: 100px" onclick="expertExcel()" >JS导出Excel</button>&nbsp;&nbsp;&nbsp;
        <button style="width: 100px" onclick="expertWord()" >JS导出Word</button>&nbsp;&nbsp;&nbsp;
        <button style="width: 100px" onclick="getDataToExcel2()" >代码导出</button>
         
      <div class ='main' id='main'></div>
      <div class ='bottom' id='buttom12'>
      </div>
      
     </div>
  </body>
</html>
<script type="text/javascript"> 

//后台弹出框式导出数据到Excel
  function getDataToExcel2(){
   var sssj = document.getElementById("time_ctrol").value;
   var xtmc = document.getElementById("st").value;
    
   xtmc = encodeURI(encodeURI(xtmc));
   var requestURL = "./DataToExcel.jsp?type=getDataToExcel&sssj=" + sssj + "&xtmc=" + xtmc;
   window.open(requestURL);
  }
  
  function createXMLHttpRequest(){
     if (window.ActiveXObject) {
    XMLhttpObject = new ActiveXObject("Microsoft.XMLHTTP");
   } else {
    XMLhttpObject = new XMLHttpRequest();
   }
     return XMLhttpObject;
  }

</script>

 //js导出EXCEL
 <script type="text/javascript">
   function expertExcel(){
    var oXL = new ActiveXObject("Excel.Application"); 
      var oWB = oXL.Workbooks.Add(); 
      var oSheet = oWB.ActiveSheet; 
      var sel=document.body.createTextRange();
      sel.moveToElementText(main);
      sel.select();
      sel.execCommand("Copy");
      oSheet.Paste();
      oXL.Visible = true;
   }

 
代码导出页面,抄袭来自csdn:
 <% 
  //这样写不太科学,因为filename一般不会写死
    //response.setHeader("Content-Disposition", "attachment;filename= aa.xls");
 //response.setContentType("application/vnd.ms-excel");  
%>
<%@ page language="java" import="java.util.*" contentType="application/vnd.ms-excel;charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.net.URLDecoder"%>
<%@ page import="nariis.pi3000.ythTjFx.sbjk.pageHelp.*"%>
<%@ page import="org.apache.poi.hssf.usermodel.*"%>
<%@ page import="java.util.ArrayList"%>
<%@ page import="nariis.pi3000.ythTjFx.sbjk.entity.DataEntity"%>
<%
 String type = request.getParameter("type");
 String sssj = request.getParameter("sssj");
 String xtmc = request.getParameter("xtmc");
     xtmc = URLDecoder.decode(xtmc,"UTF-8");
 
 System.out.print(type);
 System.out.print(sssj);
 System.out.print(xtmc);
 
 String path = "Excel";  //注意,千万别写中文
 
 response.setHeader("Content-Disposition", "attachment;filename=" + path +".xls");
 
 if("getDataToExcel".equals(type)){
  PageService pageService = new PageService();
  ArrayList<DataEntity>  list = pageService.getAllDataToExcel2(sssj);
  
  // 第一步,创建一个webbook,对应一个Excel文件   
        HSSFWorkbook wb = new HSSFWorkbook();  
       // 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet   
       HSSFSheet sheet = wb.createSheet("学生表一");  
       // 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short   
       HSSFRow row = sheet.createRow((int) 0);  
        // 第四步,创建单元格,并设置值表头 设置表头居中   
        HSSFCellStyle style = wb.createCellStyle();  
        style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式   
  
        HSSFCell cell = row.createCell((short) 0);  
        
        cell.setCellValue("SX");  
        cell.setCellStyle(style);  
        cell = row.createCell((short) 1);  
        cell.setCellValue("DWMC");  
        cell.setCellStyle(style);  
        cell = row.createCell((short) 2);  
        cell.setCellValue("SFGYPP");  
        cell.setCellStyle(style);  
        cell = row.createCell((short) 3);  
        cell.setCellValue("SJKLX");  
        cell.setCellStyle(style);  
        cell = row.createCell((short) 4); 
        cell.setCellValue("JSJSL");  
        cell.setCellStyle(style);  
        cell = row.createCell((short) 5); 
        cell.setCellValue("SSSJ");  
        cell.setCellStyle(style);  
        cell = row.createCell((short) 6); 
        cell.setCellValue("XTMC");  
        cell.setCellStyle(style);  
        cell = row.createCell((short) 7); 
        
        for (int i = 0; i < list.size(); i++)  
        {  
          int j =0;
             row = sheet.createRow((int) i + 1);  
             DataEntity dataEntity = (DataEntity) list.get(i);  
             // 第四步,创建单元格,并设置值   
             row.createCell((short) j++).setCellValue(dataEntity.getSx());  
             row.createCell((short) j++).setCellValue(dataEntity.getDWMC());
             row.createCell((short) j++).setCellValue(dataEntity.getSfgypp());
             row.createCell((short) j++).setCellValue(dataEntity.getSjklx());
             row.createCell((short) j++).setCellValue(dataEntity.getJsjsl());
             row.createCell((short) j++).setCellValue(dataEntity.getSssj());
             row.createCell((short) j++).setCellValue(dataEntity.getXtmc());
        }
        
        // 第六步,将文件存到指定位置   
        try  
         {  
        //   OutputStream outp=response.getOutputStream();
             ServletOutputStream outp =  response.getOutputStream();
    outp.flush();
    wb.write(outp);  
    outp.close();
    response.flushBuffer();
    out.clear();
    out=pageContext.pushBody(); 
          }  
         catch (Exception e)  
         {  
             e.printStackTrace();  
         } 
 }
 
 
 %>
 

java代码导出数据到Excel、js导出数据到Excel(三)的更多相关文章

  1. [改善Java代码]列表相等只需关系元素数据

    来看一个判断列表相等的例子,看代码: import java.util.ArrayList; import java.util.Vector; public class Client { public ...

  2. m_Orchestrate learning system---三十五、php数据和js数据的解耦:php数据(php代码)不要放到js代码中

    m_Orchestrate learning system---三十五.php数据和js数据的解耦:php数据(php代码)不要放到js代码中 一.总结 一句话总结:也就是以html为中介,用html ...

  3. 【HBase】通过Java代码实现HBase数据库中数据的增删改查

    目录 创建maven工程,导入jar包 java代码实现创建hbase表 java代码实现向hbase表中插入数据 java代码查询hbase数据 使用rowKey查询指定列族指定列的值 通过star ...

  4. 【Java】模拟登录教务网并获取数据

    本文章仅做技术交流演示学习,请勿用于违法操作! 前期准备 首先我们需要到要模拟登录的网页,进行抓包操作. 使用Chrome浏览器打开系统的登录页面,按F12打开开发者工具 切换到Network选项卡 ...

  5. JAVA 导出 Excel, JS 导出 Excel

    本介绍两种Excle导出方法: JAVA 导出 Excle, JS 导出 Excle 1, js 根据 html 页面的 table > tr > td 标签导出 js代码: //导出 v ...

  6. Java实现PDF和Excel生成和数据动态插入以及导出

    一.序言 Excel.PDF的导出.导入是我们工作中经常遇到的一个问题,刚好今天公司业务遇到了这个问题,顺便记个笔记以防下次遇到相同的问题而束手无策. 公司有这么两个需求: 需求一.给了一个表单,让把 ...

  7. Java利用POI导入导出Excel中的数据

         首先谈一下今天发生的一件开心的事,本着一颗android的心我被分配到了PB组,身在曹营心在汉啊!好吧,今天要记录和分享的是Java利用POI导入导出Excel中的数据.下面POI包的下载地 ...

  8. js导出excel:前端当前数据的导出

    网上找的库文件,同样做了修改.在导出的时候,有时候数据第一列和最后一列可能是复选框和操作按钮,这个是我们不需要的,加了这个的过滤 //table2excel.js /* * jQuery table2 ...

  9. java中 Excel表实现数据导入导出

    需要引入依赖: <!-- https://mvnrepository.com/artifact/org.apache.poi/poi --> <dependency> < ...

随机推荐

  1. 程序员/开发人员的真实生活 (Gif 多图)

    往工作环境上传东西的时候: 没保存,就关了 IDE 的时候: 凌晨三点调代码的时候: 正则表达式返回了了预期结果的时候: 当老板告诉我,我那一直负责的模块失效了的时候: 刚修复了Bug,我给老板演示的 ...

  2. [Java]HashMap实现与哈希冲突,与HashTable的区别

    对于 Map ,最直观就是理解就是键值对,映射,key-value 形式.一个映射不能包含重复的键,一个键只能有一个值.平常我们使用的时候,最常用的无非就是 HashMap. HashMap 实现了 ...

  3. python HTTP 状态码

    404 Not Found 在HTTP请求的路径无法匹配任何RequestHandler类相对应的模式时返回404(Not Found)响应码. 400 Bad Request 如果你调用了一个没有默 ...

  4. DNS学习

    DNS (Domain Name System 的缩写)域名系统,万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串.通过域名 ...

  5. CentOS7.2配置本地yum源

    1.检查是否有本地yum源 1)检查是否能连网 ping www.baidu.com 2)检查是否有本地yum源 yum list 2.挂载镜像文件 以上检查,说明确实是内网,也确实没有本地yum源, ...

  6. 洛谷P1781 宇宙总统

    https://www.luogu.org/problem/show?pid=1781 高精比较大小: #include<iostream> #include<cstdio> ...

  7. .net笔试题二(填空题、选择题)

    1.面向对象的语言具有_______性.________性._______性答:封装.继承.多态. 2.能用foreach遍历访问的对象需要实现 ____________接口或声明__________ ...

  8. css中伪类/伪元素详解

    一.伪类和伪元素 伪类和伪元素都是用来修饰不在文档树中的部分,区别在于, 伪类用于当已有元素处于的某个状态时,为其添加对应的样式,这个状态是根据用户行为而动态变化的(如:hover/:active). ...

  9. PHP超全局变量、魔术变量和魔术方法

    PHP超全局变量 $_GET 通过get方式传递的值(通过 URL 参数传递给当前脚本的变量的数组.) $_POST 通过post形式传递的值(当 HTTP POST 请求的 Content-Type ...

  10. GreenDao 3.x 注解中ToOne和ToMany的个人理解

    GreenDao是什么东西这个就不用多说了.自从GreenDao升级到3.0之后,编译的方法发生了改变.当然这个改变是有助于快速开发的. 区别在哪随便百度一下都可以知道.这里就不多说了. 这里主要说的 ...