导出数据库数据到Excel表
后台需要将用户信息数据导入到Excel表中提供给相关人员:
首先查询数据就不多说了;
导入Excel表直接亮代码(采用的是jxl的jar包提供的方法):
public static File ImportToExcel(List<String> data,String title) {
log.info("数据导入条数:{},标题:{}",data.size(),title);
WritableWorkbook workbook = null;
WritableSheet sheet = null;
Label label = null;
if (!title.equals("cellphone") && !title.equals("email")) {
log.info("数据标题不正确");
return null;
}
// 创建Excel表
File file = null;
try {
file = new File(System.getProperty("java.io.tmpdir")+title+".xlsx");
workbook = Workbook.createWorkbook(file);
//workbook = Workbook.createWorkbook(os);
// 创建Excel表中的sheet
sheet = workbook.createSheet("First Sheet", 0);
// 向Excel中添加数据
int row = 0;
// 添加标题
label = new Label(0, row, title.equals("cellphone") ? "手机信息表" : "邮箱信息表");
// log.debug("标题:"+i+"---"+row +"---"+ colName);
sheet.addCell(label);
log.debug("写入标题成功");
for (int i = 0; i < data.size(); i++) {
label = new Label(0, i+1, data.get(i));
sheet.addCell(label);
}
log.debug("写入内容成功");
// 关闭文件
workbook.write();
workbook.close();
log.info("数据成功写入Excel");
} catch (RowsExceededException e) {
log.debug(e.getMessage());
} catch (WriteException e) {
log.debug(e.getMessage());
} catch (IOException e) {
log.debug(e.getMessage());
} finally {
try {
workbook.close();
} catch (Exception e) {
}
}
return file;
}
思路:先创建一个tomcat临时文件的Excel表:new File(System.getProperty("java.io.tmpdir")+title+".xlsx")
再用jxl提供的接口方法将数据写入表中;最后将表下载到本地:
File file = ExcelUtil.ImportToExcel(data, name);
response.addHeader("Content-Type", "application/vnd.ms-excel");
response.addHeader("Content-Disposition","attachment; filename="+file.getName());
InputStream is = null;
OutputStream os = null;
try {
is = new FileInputStream(file);
os = response.getOutputStream();
IOUtils.copy(is, os);
response.flushBuffer();
} catch (Exception e) {
e.printStackTrace();
} finally {
IOUtils.closeQuietly(is);
IOUtils.closeQuietly(os);
}
导出数据库数据到Excel表的更多相关文章
- java 对excel操作 读取、写入、修改数据;导出数据库数据到excel
============前提加入jar包jxl.jar========================= // 从数据库导出数据到excel public List<Xskh> outPu ...
- 导出数据库数据制成Excel和txt
引用ICSharpCode.SharpZipLib.dll 1.编写压缩和解压代码 using System; using System.Collections.Generic; using Syst ...
- 配置ODBC DSN数据源,导出数据库数据到Excel过程记录
一.前言 工作中我们可能遇到这样的需要:查询数据库中的信息,并将结果导出到Excel文件.这本来没什么,但数据量比较大时,用PLSQL.toad导出Excel会出现内存不足等情况,使用odbc+Mic ...
- 导出大量数据到excel表
set_time_limit(0);error_reporting(0); // 输出Excel文件头,可把user.csv换成你要的文件名header('Content-Type: applicat ...
- 数据库数据用Excel导出的3种方法
将数据库数据用Excel导出主要有3种方法:用Excel.Application接口.用OleDB.用HTML的Tabel标签 方法1——Excel.Application接口: 首先,需要要Exce ...
- PHP导出MySQL数据到Excel文件
PHP导出MySQL数据到Excel文件 转载 常会碰到需要从数据库中导出数据到Excel文件,用一些开源的类库,比如PHPExcel,确实比较容易实现,但对大量数据的支持很不好,很容易到达PHP内存 ...
- .NET使用Office Open XML导出大量数据到 Excel
我相信很多人在做项目的都碰到过Excel数据导出的需求,我从最开始使用最原始的HTML拼接(将需要导出的数据拼接成TABLE标签)到后来happy的使用开源的NPOI, EPPlus等开源组件导出EX ...
- Excel导出数据库数据
package com.hxkr.util; import java.io.FileOutputStream; import java.util.ArrayList; import java.util ...
- 数据库数据生成Excel表格(多用在导出数据)
最近在项目开发中遇到这样一个需求,用户聊天模块产品要求记录用户聊天信息,但只保存当天的,每天都要刷新清空数据,但聊天记录要以Excel的形式打印出来,于是就引出了将数据库的数据导出成Excel表格的需 ...
随机推荐
- Spring clound 微服务--理解篇
定义:微服务就是一些协调工作的小而自治的服务 优点: 异构性:不同微服务可以使用不同的语言实现, 后端数据库也可以根据自身业务定义服务. 弹性: 一个组件不可用,不会导致级联故障.一个系统出了问题,不 ...
- mac OS 安装 Homebrew及常用命令
Homebrew 是由国外大神 Max Howell 开发的一款包管理工具,类似Debian的apt,他可以安装任何你想安装的东西. 安装方法 命令行输入 /usr/bin/ruby -e &quo ...
- elasticsearch 英文数字组合字符串模糊检索
不分词,然后用wildcard查询 { "query": { "wildcard": { "字段名": "*123*" ...
- 第十三章 存储之volume
容器磁盘上的文件的生命周期是短暂的,这就使得在容器中运行重要应用时会出现一些问题.首先,当容器崩溃时,kubelet 会重启它,但是容器中的文件将丢失——容器以干净的状态(镜像最初的状态)重新启动.其 ...
- Tomcat8.0源码编译
最近打算开始研究一下Tomcat的工作原理,拜读一下源码.所以先从编译源码开始了.尽管网上有那么多的资料,但是总是觉得,自己研究一遍,写一遍,在动手做一遍能够让我们更加深入的了解.现在整个社会都流行着 ...
- React全栈-社交网络程序 提交表单数据
1. 给每个input 表格添加change 事件 当input 变化时触发 <div className="form-group"> <input type= ...
- pip飞起来了
这里说下Windows下的修改方法,看了网上很多的教程发现都不行,尝试了好久终于发现了可行的方法. 找到python安装目录下的:\Lib\site-packages\pip\models\index ...
- 小程序内嵌H5页面判断微信及小程序环境
判断微信及小程序环境 1.H5页面引入jweixin-1.3.2.js 2. var ua = window.navigator.userAgent.toLowerCase(); if(ua.matc ...
- docker 运行springboot jar包
1.将jar包移至自定义的/usr/jar目录下; 2.在/usr/jar目录下创建Dockerfile文件 文件如下: #FROM命令定义构建镜像的基础镜像,该条必须是dockerfile的首个命令 ...
- shell 判断字符串是否包含另一个字符串
1.使用grep s1="abcdefg" s2="bcd" result=$(echo $s1 | grep "${s2}") if [[ ...