zoukankan      html  css  js  c++  java
  • java分页数据导出excel

    /**
    	 * 订单导出(用于统计利润)
    	 * @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());
    	}

  • 相关阅读:
    android用户界面之WebView教程实例汇总
    android用户界面之TabHost教程实例汇总
    手把手教你写android项目@第一期项目——身份证查询创新(项目总结)
    android用户界面之GridView教程实例汇总
    android学习从模仿开始 —— 模仿UI 导航帖
    Android 实现书籍翻页效果
    android用户界面之Widget教程实例汇总
    如何安装webdriver chrome浏览器支持
    Seleniumwebdriver系列教程(15)————使用已存在的profile启动firefox
    ruby设计模式之【观察者】模式1————简单的观察者模式
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5279857.html
Copyright © 2011-2022 走看看