/**
* 订单导出(用于统计利润)
* @return
*/
public String orderExport() throws IOException{
if (queryOrderList_currentPage == null || queryOrderList_currentPage <= 0) {
queryOrderList_currentPage = 1;
}
OrderInfo order = new OrderInfo();
if (!StringUtil.isNull(queryOrderList_orderStatus)) {
order.setOrderStatus(queryOrderList_orderStatus);
}
if (!StringUtil.isNull(queryOrderList_orderCard)) {
order.setOrderCard(queryOrderList_orderCard);
}
if (!StringUtil.isNull(queryOrderList_memberPhone)) {
order.setMemberPhone(queryOrderList_memberPhone);
}
if (!StringUtil.isNull(queryOrderList_memberContactsPhone)) {
order.setMemberContactsPhone(queryOrderList_memberContactsPhone);
}
if (queryOrderList_businessId != null && queryOrderList_businessId > 0) {
order.setBusinessId(queryOrderList_businessId);
}
if (!StringUtil.isNull(queryOrderList_addressDesc)) {
order.setAddressDesc(queryOrderList_addressDesc);
} if (!StringUtil.isNull(queryOrderList_beginTime) && !StringUtil.isNull(queryOrderList_endTime)) {
order.setBeginTime(queryOrderList_beginTime);
order.setEndTime(queryOrderList_endTime);
} try {
HttpServletResponse response = ServletActionContext.getResponse();
queryOrderList_pageBean = statisticsService.queryOrderListByCompanyConditions(order,queryOrderList_currentPage, queryOrderList_pageSize);
int totalPage = queryOrderList_pageBean.getTotalPage();
response.reset();
SimpleDateFormat sdFormat = new SimpleDateFormat("yyyy-MM-dd");
String fname= "订单导出"+sdFormat.format(new Date());
fname=new String(fname.getBytes("GBK"),"ISO_8859_1");//文件名{避免出现乱码}
response.setHeader("Content-disposition", "attachment; filename="+fname+".csv");// 设定输出文件头
response.setContentType("text/csv");
response.setCharacterEncoding("UTF-8");
OutputStream out = response.getOutputStream();
String sep = ",";
//列名
for(int column=0;column<CompanyConfig.ORDER_EXPORT_COLUMN.split(",").length;column++){
out.write(CompanyConfig.ORDER_EXPORT_COLUMN.split(",")[column].getBytes());
out.write(sep.getBytes());
}
//换行符
out.write(System.getProperty("line.separator").getBytes());
//数据
OrderInfo newOrderInfo =new OrderInfo();
if(queryOrderList_pageBean.getList()!=null && queryOrderList_pageBean.getList().size()>0){
for (int i = 0; i < queryOrderList_pageBean.getList().size(); i++) {
newOrderInfo=(OrderInfo)queryOrderList_pageBean.getList().get(i);
getOut(out,newOrderInfo,sep);
}
}
if(totalPage>1){
for (int m = 2; m <= totalPage; m++) {
queryOrderList_pageBean = statisticsService.queryOrderListByCompanyConditions(order,
queryOrderList_currentPage, queryOrderList_pageSize);
List list =queryOrderList_pageBean.getList();
if(list!=null && list.size()>0){
for (int j = 0; j < list.size(); j++){
OrderInfo nOrderInfo=(OrderInfo)list.get(j);
getOut(out, nOrderInfo, sep);
}
}
}
}
out.flush();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
return null;
} public void getOut(OutputStream out,OrderInfo newOrderInfo,String sep) throws IOException{
if(!StringUtil.isNull(newOrderInfo.getOrderCard())){
out.write(String.valueOf(newOrderInfo.getOrderCard()).getBytes());
}else{
out.write(String.valueOf("订单编号为空").getBytes());
}
out.write((sep).getBytes());
if(!StringUtil.isNull(newOrderInfo.getMemberContactsPhone())){
out.write(newOrderInfo.getMemberContactsPhone().getBytes());
}else{
out.write(String.valueOf("用户联系电话为空").getBytes());
}
out.write((sep).getBytes());
if(newOrderInfo.getAddressDesc()!=null){
out.write(newOrderInfo.getAddressDesc().getBytes());
}else{
out.write(String.valueOf("联系地址为空").getBytes());
}
out.write((sep).getBytes());
if(newOrderInfo.getGenerateTime()!=null){
out.write(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(newOrderInfo.getGenerateTime()).getBytes());
}else{
out.write(String.valueOf("下单时间为空").getBytes());
}
out.write(System.getProperty("line.separator").getBytes());
}

java分页数据导出excel的更多相关文章

  1. Java使用POI实现数据导出excel报表

    Java使用POI实现数据导出excel报表 在上篇文章中,我们简单介绍了java读取word,excel和pdf文档内容 ,但在实际开发中,我们用到最多的是把数据库中数据导出excel报表形式.不仅 ...

  2. jxl java工具类,导出excel,导入数据库

    1: 引入jxl jar 我使用的为maven管理, <!--Excel工具--> <dependency> <groupId>net.sourceforge.je ...

  3. 【asp.net】将GridView数据导出Excel

    概要: 中午睡了一会,醒来的时候看到老师叫我去办公室,需求是这样的,把excel表中的每个同学,判断图片目录中是否有对应的照片(图片的名字用的学号或身份证号码) 没有对应图片的学生记录,存入自己的数据 ...

  4. Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类

    Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类 ============================== ©Copyright 蕃薯耀 20 ...

  5. java导入、导出Excel文件

    一.介绍 当前B/S模式已成为应用开发的主流,而在企业办公系统中,常常有客户这样子要求:你要把我们的报表直接用Excel打开(电信系统.银行系统).或者是:我们已经习惯用Excel打印.这样在我们实际 ...

  6. Java中导入导出Excel -- POI技术

    一.介绍: 当前B/S模式已成为应用开发的主流,而在企业办公系统中,常常有客户这样子要求:你要把我们的报表直接用Excel打开(电信系统.银行系统).或者是:我们已经习惯用Excel打印.这样在我们实 ...

  7. java使用jxls导出Excel

    jxls是基于POI的Excel模板导出导入框架.通过使用类似于jstl的标签,有效较少导出Excel的代码量. 1.pom <!-- https://mvnrepository.com/art ...

  8. 百度地图里面搜索到的公司商家电话导出表格?怎样将把百度地图里面搜索到的公司 电话 地址 等数据导出excel里?

    好多人在问:如何将百度地图里面搜索到的公司商家电话导出表格?怎样将把百度地图里面搜索到的公司 电话 地址 等数据导出excel里? 现在,很多人都在网络上找商家,联系业务. 百度地图里有很多的商家联系 ...

  9. JavaScript 上万条数据 导出Excel文件(改装版)

    最近项目要js实现将数据导出excel文件,网上很多插件实现~~那个开心呀,谁知道后面数据量达到上万条时出问题:浏览器不仅卡死,导出的excel文件一直提示网络失败.... debug调试发现var  ...

随机推荐

  1. ZOJ3477&JAVA大数类

    转:http://blog.csdn.net/sunkun2013/article/details/11822927 import java.util.*; import java.math.BigI ...

  2. DFS(深度优先搜索)模板

    void dfs()//参数用来表示状态 { if(到达终点状态) { ...//根据题意来添加 return; } if(越界或者是不符合法状态) return; for(扩展方式) { if(扩展 ...

  3. openstack vm image

    1,openstack 基于iso生成镜像

  4. tangible T4 Editor 2.2.3 for VS2010 / VS2012 / VS2013 Preview

    tangible T4 Editor 2.2.3 for VS2010 / VS2012 / VS2013 Preview angible T4 Editor 2.2.3 plus UML model ...

  5. poj 1986 Distance Queries(LCA)

    Description Farmer John's cows refused to run in his marathon since he chose a path much too long fo ...

  6. JS封装cookie操作函数实例(设置、读取、删除)

    本文实例讲述了JS封装cookie操作函数.分享给大家供大家参考,具体如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 ...

  7. Python 自动化脚本学习(三)

    函数 例子 def hello(): print("hello" + "world"); 有参数的函数 def hello(name): print(" ...

  8. 计算机管理cmd命令行

    给你一个资料,想必对你来讲有保存价值: 开始菜单中的“运行”是通向程序的快捷途径,输入特定的命令后,即可快速的打开Windows的大部分程序,熟练的运用它,将给我们的操作带来诸多便捷. winver ...

  9. Android漫游记(1)---内存映射镜像(memory maps)

    Android系统内核基于Linux2.6+内核,因此,其在进程内存管理方面的非常多机制和Linux是非常相像的.首先,让我们来看一个典型的Android进程的内存镜像(App进程和Native本地进 ...

  10. How to Avoid Producing Legacy Code at the Speed of Typing

    英语不好翻译很烂.英语好的去看原文. About the Author I am a software architect/developer/programmer.I have a rather p ...