/**
* 订单导出(用于统计利润)
* @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. Red and Black(简单dfs)

    Red and Black Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tot ...

  2. BestCoder Round #14 B 称号 Harry And Dig Machine 【TSP】

    称号:Harry And Dig Machine 哈哈  最终涨边粉色了,不easy呀.顺便写一道题解吧 题意:给一个m*n的矩阵,然后当中最多由10个有值,求总左上角把全部的值都拿上回到左上角的最小 ...

  3. jqGrid插件的重载表格的解决方案

    jqGrid插件的重载表格的解决方案 $("#table_list_1").empty();// 清空表格内容 var parent=$("#gbox_table_lis ...

  4. wpf中,一个简单的自定义treeview

    首先创建一个自定义控件,在里面定义好treeview的样式,将本来的三角形的图标变为加号的图标,并且添加节点之间的连线. <UserControl x:Class="TreeViewE ...

  5. Letter of application, e-mail version

    Subject line: (logical to recipient!) Application for sales representative for mid-Atlantic area Apr ...

  6. Hadoop: HDFS 格式化时,出现 “ERROR namenode.NameNode: java.io.IOException: Cannot create directory /usr/hadoop/tmp/dfs/name/current”

    原因是 没有设置 /usr/hadoop/tmp 的权限没有设置, 将之改为: chown –R hadoop:hadoop /usr/hadoop/tmp 查看:

  7. 系统开发中按下Enter键登录系统

    转载来自:http://www.jb51.net/article/54308.htm 系统开发中按下Enter键登录系统,即就是监听键盘,当按下Enter键后调用登录按钮的click()事件. JS方 ...

  8. 11g导入大量包含子分区的数据时表空间不足

    问题描述: ORACLE11g使用impdp数据泵导入时遭遇: ORA-01691: Lob 段 ISCS.SYS_LOB0000100750C00045$$ 无法通过 128 (在表空间 RT_DA ...

  9. mysql+php+pdo批量添加大数据

    1.使用insert into插入 ini_set('max_execution_time','0');//限制超时时间,因为第一种时间较长,索性设为0不限制 $pdo = new PDO(" ...

  10. Flask把变量注册到模板中

    使用python的Flask框架时,参考<Flask Web开发>一书时,发现书中可以在全局使用Permission.FOLLOW变量. 但是自己在尝试是,确提示变量没有定义.经过搜索,找 ...