Java实现Excel导入数据库,数据库中的数据导入到Excel
private static void executeMethod(JobExecutionContext arg0) throws Exception{
try {
TContrastService tContrastService =SpringContextHelper.getBean("tContrastService", TContrastService.class);
String data="2016";
Integer shopId=135;
List<TContrast> list=tContrastService.queryByShopId("2016", 135, 0);
WritableWorkbook wwb = null;
// 创建可写入的Excel工作簿
String fileName = "D://"+data+"_"+shopId+".xls";
File file=new File(fileName);
if (!file.exists()) {
file.createNewFile();
}
//以fileName为文件名来创建一个Workbook
wwb = Workbook.createWorkbook(file);
// 创建工作表
WritableSheet ws = wwb.createSheet("Test Shee 1", 0);
//要插入到的Excel表格的行号,默认从0开始
Label ID= new Label(0, 0, "编号(id)");//表示第
Label PAY_TYPE= new Label(1, 0, "支付类型");
Label PASS_ID= new Label(2, 0, "通道id");
Label PASS_NO= new Label(3, 0, "通道订单号");
Label PASS_AMOUNT= new Label(4, 0, "通道金额");
Label SYS_ID= new Label(5, 0, "系统订单id");
Label SYS_NO= new Label(6, 0, "系统订单号");
Label SYS_AMOUNT= new Label(7, 0, "系统金额");
Label ORDER_TYPE= new Label(8, 0, "订单类型");
Label ORDER_STATE= new Label(9, 0, "订单状态");
Label ORDER_TIME= new Label(10, 0, "交易时间");
Label DIF_AMOUNT= new Label(11, 0, "差异金额");
Label RATE= new Label(12, 0, "手续费");
Label RATE_AMOUNT= new Label(13, 0, "手续费率金额");
Label RECE_AMOUNT= new Label(14, 0, "实收金额");
ws.addCell(ID);
ws.addCell(PAY_TYPE);
ws.addCell(PASS_ID);
ws.addCell(PASS_NO);
ws.addCell(PASS_AMOUNT);
ws.addCell(SYS_ID);
ws.addCell(SYS_NO);
ws.addCell(SYS_AMOUNT);
ws.addCell(ORDER_TYPE);
ws.addCell(ORDER_STATE);
ws.addCell(ORDER_TIME);
ws.addCell(DIF_AMOUNT);
ws.addCell(RATE);
ws.addCell(RATE_AMOUNT);
ws.addCell(RECE_AMOUNT);
for (int i = 0; i < list.size(); i++) {
TContrast t =list.get(i);
Label labelID= new Label(0, i+1, t.getID()+"");//表示第
ws.addCell(labelID);
Label labelPAY_TYPE=null;
if(t.getPayType().intValue()==6){
labelPAY_TYPE= new Label(1, i+1, "支付宝");
}else{
labelPAY_TYPE= new Label(1, i+1, "微信");
}
ws.addCell(labelPAY_TYPE);
Label labelPASS_ID= new Label(2, i+1, t.getPassId());
ws.addCell(labelPASS_ID);
Label labelPASS_NO= new Label(3, i+1, t.getPassNo());
ws.addCell(labelPASS_NO);
Label labelPASS_AMOUNT= new Label(4, i+1, t.getPassAmount()+"");
ws.addCell(labelPASS_AMOUNT);
Label labelSYS_ID= new Label(5, i+1, t.getSysId());
ws.addCell(labelSYS_ID);
Label labelSYS_NO= new Label(6, i+1, t.getSysNo());
ws.addCell(labelSYS_NO);
Label labelSYS_AMOUNT= null;
if(t.getSysAmount()!=null){
labelSYS_AMOUNT= new Label(7, i+1, t.getSysAmount()+"");
}else{
labelSYS_AMOUNT= new Label(7, i+1,"0");
}
ws.addCell(labelSYS_AMOUNT);
Label labelORDER_STATE=null;
switch (t.getOrderState().intValue()) {//0正常1未对账2已对帐3已调账
case 0:
labelORDER_STATE= new Label(8, i+1, "正常");
break;
case 1:
labelORDER_STATE= new Label(8, i+1, "未对账");
break;
case 2:
labelORDER_STATE= new Label(8, i+1, "已对帐");
break;
default:
labelORDER_STATE= new Label(8, i+1, "已调账");
break;
}
ws.addCell(labelORDER_STATE);
Label labelORDER_TYPE=null;
switch (t.getOrderType().intValue()) {//0正常1订单缺失2通道缺失3金额不正确
case 0:
labelORDER_TYPE= new Label(9, i+1, "正常");
break;
case 1:
labelORDER_TYPE= new Label(9, i+1, "订单缺失");
break;
case 2:
labelORDER_TYPE= new Label(9, i+1, "通道缺失");
break;
default:
labelORDER_TYPE= new Label(9, i+1, "金额不正确");
break;
}
ws.addCell(labelORDER_TYPE);
SimpleDateFormat dd = new SimpleDateFormat("yyyy-MM-dd HH:mm");
Label labelORDER_TIME= new Label(10, i+1, dd.format(t.getOrderTime()));
ws.addCell(labelORDER_TIME);
Label labelDIF_AMOUNT= new Label(11, i+1, t.getDifAmount()+"");
ws.addCell(labelDIF_AMOUNT);
Label labelRATE= new Label(12, i+1, t.getRATE());
ws.addCell(labelRATE);
Label labelRATE_AMOUNT= new Label(13, i+1, t.getRateAmount()+"");
ws.addCell(labelRATE_AMOUNT);
Label labelRECE_AMOUNT= new Label(14, i+1, t.getReceAmount()+"");
ws.addCell(labelRECE_AMOUNT);
}
//写进文档
wwb.write();
// 关闭Excel工作簿对象
wwb.close();
} catch (Exception e) {
e.printStackTrace();
}
}
jsp访问的时候只能用location.herf="www.baidu.com"
来自:http://www.cnblogs.com/zyw-205520/p/3762954.html
Java实现Excel导入数据库,数据库中的数据导入到Excel的更多相关文章
- HBase结合MapReduce批量导入(HDFS中的数据导入到HBase)
HBase结合MapReduce批量导入 package hbase; import java.text.SimpleDateFormat; import java.util.Date; import ...
- phpexcel的写操作将数据库中的数据导入到excel中
这个版本据说是可以支持excel2007,但是我使用2007编辑的xlsx是无法获得该库的支持.于是乎我就将它转化为2003.感觉支持地很好. 下面介绍一下具体的使用: require_once('. ...
- python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图
python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图 # coding=utf-8 from openpyxl import load_workbook ...
- 使用sqoop将MySQL数据库中的数据导入Hbase
使用sqoop将MySQL数据库中的数据导入Hbase 前提:安装好 sqoop.hbase. 下载jbdc驱动:mysql-connector-java-5.1.10.jar 将 mysql-con ...
- 把数据库中的数据制作成Excel数据
把数据库中的数据制作成Excel数据 如果我们在使用Excel的时候,需要把数据库中的数据制作成Excel数据透视表,我们该怎么操作呢?如果数据在数据库中,我们不用把数据导入到工作表中,我们可以直接以 ...
- Sqoop(三)将关系型数据库中的数据导入到HDFS(包括hive,hbase中)
一.说明: 将关系型数据库中的数据导入到 HDFS(包括 Hive, HBase) 中,如果导入的是 Hive,那么当 Hive 中没有对应表时,则自动创建. 二.操作 1.创建一张跟mysql中的i ...
- 如何将数据库中的数据导入到Solr中
要使用solr实现网站中商品搜索,需要将mysql数据库中数据在solr中创建索引. 1.需要在solr的schema.xml文件定义要存储的商品Field. 商品表中的字段为: 配置内容是: < ...
- 如何将redis中的数据导入到本地MongoDB和MySQL数据库
将redis中的数据导入到本地MongoDB数据库 创建一个process_items_mongodb.py文件(文件名自定义): #!/usr/bin/env python # -*- coding ...
- 如何将存储在MongoDB数据库中的数据导出到Excel中?
将MongoDB数据库中的数据导出到Excel中,只需以下几个步骤: (1)首先,打开MongoDB安装目录下的bin文件夹,(C:\Program Files (x86)\MongoDB\Serve ...
- 使用Python将Excel中的数据导入到MySQL
使用Python将Excel中的数据导入到MySQL 工具 Python 2.7 xlrd MySQLdb 安装 Python 对于不同的系统安装方式不同,Windows平台有exe安装包,Ubunt ...
随机推荐
- uploadify v3.2.1 上传报大量js 类似__flash__addCallback(document.getElementById("SWFUpload_0"), "ReturnUploadStart"); 错误
报__flash__addCallback未定义 报__flash__removeCallback未定义 最后解决方法: uploadify 提供了destroy方法,每次使用完后,清空就可以了. ...
- 关于tp.5.0角色管理导致的创建角色登陆报错问题解决!
今天用tp 5.0的时候,遇到一个问题,就是在利用超级管理员创建管理员角色时,角色账号密码登陆报错的问题 解决方法如下 htaccess文件修改如下 <IfModule mod_rewrite. ...
- 循序渐进Python3(十一) --5-- 同源策略
一.什么是同源策略 同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能.它是由Netscape提出的一个著名的安全策略,现在所有的可支持javascript ...
- Unity协程截图,WWWForm、WWW配合上传
先说一下原理.. 截图有两种方法,第一种: Application.CaptureScreenshot(url); 这个API可以截全屏并保存到指定路径 这里我们不采用此方法 下面的代码采用第二种方法 ...
- KVO
•基本概念 Key Value Observing, 键值观察者.它提供一种机制,当指定的对象的属性被修改后,则对象就会接收到通知. 与NSNotification不同,键值观察中并没有中心对象来为所 ...
- css之absolute绝对定位(技巧篇)
无依赖的绝对定位 margin,text-align与绝对定位的巧妙用法 例子1:实现左右上角的图标覆盖,如图,
- new(C# 参考)
在 C# 中,new 关键字可用作运算符.修饰符或约束. new 运算符 用于创建对象和调用构造函数. new 修饰符 用于隐藏基类中被继承的成员. new 约束 用于在泛型声明中约束可能用作类型参数 ...
- 【转载】SQL Server 2008 r2 中 SQL语句中单引号转义
sql server有两个转义符. 默认情况下, 单引号'是字符串的边界符, 如果在字符串中包含单引号', 则必须使用两个单引号', 第1个单引号'就是转义符.
- ajax 如何提交数据到后台jsp页面,以及提交完跳转到jsp页面
我logincheck.jsp页面取传参数代码: String user=request.getParameter("user1"); String pwd=request.get ...
- nginx编译模块详解
–prefix= 指向安装目录–sbin-path 指向(执行)程序文件(nginx)–conf-path= 指向配置文件(nginx.conf)–error-log-path= 指向错误日志目录–p ...