java代码导出数据到Excel、js导出数据到Excel(三)
<button style="width: 100px" onclick="expertWord()" >JS导出Word</button>
<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>
<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;
}
<%
//这样写不太科学,因为filename一般不会写死
//response.setHeader("Content-Disposition", "attachment;filename= aa.xls");
//response.setContentType("application/vnd.ms-excel");
%>
<%@ 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(三)的更多相关文章
- [改善Java代码]列表相等只需关系元素数据
来看一个判断列表相等的例子,看代码: import java.util.ArrayList; import java.util.Vector; public class Client { public ...
- m_Orchestrate learning system---三十五、php数据和js数据的解耦:php数据(php代码)不要放到js代码中
m_Orchestrate learning system---三十五.php数据和js数据的解耦:php数据(php代码)不要放到js代码中 一.总结 一句话总结:也就是以html为中介,用html ...
- 【HBase】通过Java代码实现HBase数据库中数据的增删改查
目录 创建maven工程,导入jar包 java代码实现创建hbase表 java代码实现向hbase表中插入数据 java代码查询hbase数据 使用rowKey查询指定列族指定列的值 通过star ...
- 【Java】模拟登录教务网并获取数据
本文章仅做技术交流演示学习,请勿用于违法操作! 前期准备 首先我们需要到要模拟登录的网页,进行抓包操作. 使用Chrome浏览器打开系统的登录页面,按F12打开开发者工具 切换到Network选项卡 ...
- JAVA 导出 Excel, JS 导出 Excel
本介绍两种Excle导出方法: JAVA 导出 Excle, JS 导出 Excle 1, js 根据 html 页面的 table > tr > td 标签导出 js代码: //导出 v ...
- Java实现PDF和Excel生成和数据动态插入以及导出
一.序言 Excel.PDF的导出.导入是我们工作中经常遇到的一个问题,刚好今天公司业务遇到了这个问题,顺便记个笔记以防下次遇到相同的问题而束手无策. 公司有这么两个需求: 需求一.给了一个表单,让把 ...
- Java利用POI导入导出Excel中的数据
首先谈一下今天发生的一件开心的事,本着一颗android的心我被分配到了PB组,身在曹营心在汉啊!好吧,今天要记录和分享的是Java利用POI导入导出Excel中的数据.下面POI包的下载地 ...
- js导出excel:前端当前数据的导出
网上找的库文件,同样做了修改.在导出的时候,有时候数据第一列和最后一列可能是复选框和操作按钮,这个是我们不需要的,加了这个的过滤 //table2excel.js /* * jQuery table2 ...
- java中 Excel表实现数据导入导出
需要引入依赖: <!-- https://mvnrepository.com/artifact/org.apache.poi/poi --> <dependency> < ...
随机推荐
- Django框架之MVT(2)
Django框架之MVT 1. MVT模型 - module:模型,和数据库相关的 - template:模板,存放html文件,模板语法(目的是将变量如果巧妙的嵌入到h ...
- JavaScript读取文本,并渲染在html
html <pre id="myText" style="word-wrap: break-word; white-space: pre-wrap; white-s ...
- mysql导入sql文件错误#1044 - Access denied for user 'root'@'localhost'
在我的个人知识管理中,经常用到mysql数据库,wordpress搭建的worklog.搜索测试数据.我blog的测试环境等.我在自己的电脑上整了WAMP(Windows Apache MySQL P ...
- 六,IO系统
六,IO系统 一,数据源 1,数据源--管道确认使用那根管道--节点流 2,先确定管道在tey中new出管道,new出后就写关闭代码,写完关闭代码在写中间代码 3,取数据和放数据结束语句必须有两个,不 ...
- java wait(),notify(),notifyAll()
wait()的作用是使当前执行代码的线程进行等待,此方法是Object类的方法,该方法用来将当前线程置入“预执行队列”中,并且在wait()所带的代码处停止执行,直到接到通知或被中断位置.在调用wai ...
- cas 单点登录服务端客户端配置
首先,下载 cas-server-3.5.2-release http://pan.baidu.com/s/1GJ8Gs cas-client-3.2.1-release http://pan.bai ...
- LCA 离线做法tarjan
tarjan(int u) { int v; for(int i=h[u];i;i=nex[i])//搜索边的 { v=to[i]; tarjan(v); marge(u,v); vis[v]=; } ...
- rest_framework之视图
写一个出版社的增删改查restful接口 models from django.db import models # Create your models here. from django.db i ...
- html5 新增表单控件和表单属性
新的输入型控件 email:电子邮箱文本框,跟普通的没什么区别 当输入不是邮箱的时候,验证通不过 移动端的键盘会有变化 tel:电话号码 一般用于手机端,是一个键盘切换 url:网页的 ...
- vuex的state,mutation,getter,action
开始!正常的简单的拆分下是这样的文件当然module可以在store下面新建一个文件夹用来处理单独模块的vuex管理比较合适. 1.index.js下面 import Vue from 'vue' i ...