`
xsuo
  • 浏览: 123417 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

导出EXCEL

阅读更多

package com.wms.util;

import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.util.ArrayList;
import java.util.HashMap;
import oracle.jdbc.driver.OracleTypes;
import org.apache.log4j.Logger;
import com.wms.webapp.bean.PageBean;
import com.wms.webapp.dao.BaseDAO;

/**
* @classfuction 导出EXCEL DAO
* @author huangqixing
* @date 2007-6-12
*/
public class DataOutExcelDao extends BaseDAO{
/**
* 申明变量
*/
private ArrayList arraylist = null; //总集合
private ArrayList columnvalueslist = null; //数据集合
String[] columnname = null;//列名
String[] columnvalues = null;//列数据集
HashMap hm = new HashMap();

private Logger log = Logger.getLogger(DataOutExcelDao.class); //输出日志

/**
* @methodname getBaseFeelist<费用信息>
* @return hm<HashMap>
*
*/
public HashMap getBaseFeelist(){
String plsql = "{call WMS_BASE_FEE_SELE(?,?,?,?,?,?,?,?,?,?,?,?,?,?)}";
getConnection();
if (conn != null) {
try {
cst = conn.prepareCall(plsql);
cst.setString(1, null);// 信息seq
cst.setString(2, null);//费用代码
cst.setString(3, null);//费用名称
cst.setString(4, null);//计费方式
cst.setString(5, null);//是否可用
cst.setString(6, "A");// 查询类型 L:默认列表 Q:查询列表 V:查看详细
cst.setString(7, null);//排序字段
cst.setString(8, null);//排序模式 ASC:升序 DESC:降序
cst.setFloat(9, 0); //当前记录行数

//返回值
cst.registerOutParameter(10, OracleTypes.NUMBER);// 返回总记录数
cst.registerOutParameter(11, OracleTypes.NUMBER);// Oracle系统错误号
cst.registerOutParameter(12, OracleTypes.NUMBER);// 业务返回值
// 1:成功 2:警告
// -1:失败
cst.registerOutParameter(13, OracleTypes.VARCHAR);// 程序编号
// WMS_BASE_FEE
cst.registerOutParameter(14, OracleTypes.CURSOR);// 返回游标
cst.execute();
int maxRowCount = Integer.parseInt(cst.getObject(10).toString());
if (maxRowCount == 0) {
return null;
}
rset = (ResultSet) cst.getObject(14);
columnvalueslist = new ArrayList(); //数据集合
ResultSetMetaData metadata = rset.getMetaData();
int colcount = metadata.getColumnCount();
columnname = new String[colcount];

while (rset.next()) {
/*
* 遍历<列集>
*/
columnvalues = new String[colcount];
columnvalues[0]=rset.getString(2);
columnvalues[1]=rset.getString(3);
columnvalues[2]=rset.getString(7);
columnvalues[3]=rset.getString(8);
columnvalues[4]=rset.getString(9);
columnvalues[5]=rset.getString(10);
columnvalueslist.add(columnvalues);
}
/*
* 获取<表头>
*/
columnname[0]= metadata.getColumnName(2);
columnname[1]= metadata.getColumnName(3);
columnname[2]= metadata.getColumnName(7);
columnname[3]= metadata.getColumnName(8);
columnname[4]= metadata.getColumnName(9);
columnname[5]= metadata.getColumnName(10);

/*
* 用hm<HaspMap>存放列名,以及列集
*/
hm.put(0, columnname);
hm.put(1, columnvalueslist);
}
catch (Exception e) {
e.printStackTrace();
} finally {
CloseResultSet();
CloseCallableStatement();
disConnection();
}

}
return hm;
}

package com.wms.util;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import jxl.*;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;

import java.io.*;

//导入EXCEL
/******导入EXCEL-执行端******/
public class DataOutExcelCon {

public int WriteDataToExcel(String opseq,String tablepath,String tablename) throws RowsExceededException, WriteException, IOException{
ArrayList listall = null; //表数据集合
HashMap totallist = new HashMap(); //总数据集
ArrayList listsub = null;//子集合
String [] title = null;//表头
int flag = -1;

DataOutExcelService does = new DataOutExcelService();
System.out.print("opseq="+opseq);
totallist = does.getDataAndTitle(opseq);
System.out.println("totallist.size"+totallist.size());
System.out.println("tablename"+tablename);
title = (String[]) totallist.get(0); //获取表头
listall = (ArrayList) totallist.get(1);//获取数据集
System.out.println("---------------"+listall.size());
//表名:tablename
WritableWorkbook workbook = Workbook.createWorkbook(new File(tablepath));
//工作薄:tablename
WritableSheet sheet = workbook.createSheet(tablename,0);
for(int i = 0; i<title.length;i++){
Label label=new Label(i,0,title[i]);
//将定义好的单元格添加到工作表中
sheet.addCell(label);
}
int rows = 1; //行数
Iterator iter = listall.iterator();
while (iter.hasNext()) {
String[] value = (String[]) iter.next();
for (int column = 0 ; column < value.length; column++) {
sheet.addCell(new Label(column, rows, value[column]));
}
rows++;
}
workbook.write();
workbook.close();
flag = 1;
return flag;
}
}

package com.wms.util;

import java.util.ArrayList;
import java.util.HashMap;

/*****导入EXCEL-提取数据(通用)****/
public class DataOutExcelService {
HashMap listall = new HashMap();//费用集合:数据集和表头集合
public HashMap getDataAndTitle(String opseq){
int seq = Integer.parseInt(opseq);
switch(seq){

/*************费用信息********************/
case 1:{
//费用信息title
DataOutExcelDao doed = new DataOutExcelDao();
listall=doed.getBaseFeelist();
break;
}

/**********运输站点信息*******************/
case 2:{
DataOutExcelDao doed = new DataOutExcelDao();
listall=doed.getBasePortlist();
break;
}
/**********公司信息*******************/
case 3:{
DataOutExcelDao doed = new DataOutExcelDao();
listall=doed.getBaseCompanylist();
break;
}
/**********货币信息*******************/
case 4:{
DataOutExcelDao doed = new DataOutExcelDao();
listall=doed.getCurrencylist();
break;
}
/**********标准代码信息*******************/
case 5:{
DataOutExcelDao doed = new DataOutExcelDao();
listall=doed.getBaseStandardlist();
break;
}
/**********库区信息*******************/
case 6:{
DataOutExcelDao doed = new DataOutExcelDao();
listall=doed.getBasePlacelist();
break;
}
/**********仓库信息*******************/
case 7:{
DataOutExcelDao doed = new DataOutExcelDao();
listall=doed.getWareHouselist();
break;
}
/**********运输线路信息*******************/
case 8:{
DataOutExcelDao doed = new DataOutExcelDao();
listall=doed.getBaseLinelist();
break;
}
/**********货品信息*******************/
case 9:{
DataOutExcelDao doed = new DataOutExcelDao();
listall=doed.getGoodsInfolist();
break;
}
/**********货品包装信息*******************/
case 10:{
DataOutExcelDao doed = new DataOutExcelDao();
listall=doed.getGoodsPacklist();
break;
}
/***************************************/
/**********库位信息**********************/
case 11:{
DataOutExcelDao doed = new DataOutExcelDao();
listall=doed.getLocationlist();
break;
}
/***************************************/
default : System.out.println("没有定义此条件");

}



return listall;
}
}

分享到:
评论

相关推荐

    使用aspose导出Excel(根据模板导出excel).zip

    在本示例中,我们将深入探讨如何使用Aspose库在.NET环境中根据模板导出Excel电子表格。这个过程涉及到多个步骤和技术,包括理解Aspose的API、模板设计以及数据注入。 首先,Aspose库提供了强大的Excel操作功能,...

    基于SpringBoot和POI实现单线程和多线程导出Excel.zip

    基于SpringBoot和POI实现单线程和多线程导出Excel.zip基于SpringBoot和POI实现单线程和多线程导出Excel.zip基于SpringBoot和POI实现单线程和多线程导出Excel.zip基于SpringBoot和POI实现单线程和多线程导出Excel.zip...

    poi导出根据模板导出excel和简单列表导出excel源码

    在本案例中,我们关注的是如何使用 Apache POI 库来导出 Excel 文件,特别是根据模板导出和简单列表导出。下面将详细介绍这个过程。 1. **Apache POI 概述** Apache POI 提供了 Java API 来读写 Microsoft Office ...

    pb导出excel2007

    "pb导出excel2007"这个主题涉及到的是如何在PowerBuilder中将数据窗口(DataWindow)的内容导出到Excel 2007格式的文件中。在实际开发中,有时我们需要将PB的数据窗口数据导出到Excel以便于分析、处理或分享,而这个...

    Delphi DBGrid导出Excel2010

    Delphi DBGrid 导出 Excel 2010 Delphi DBGrid 是一个强大的数据-grid 控件,经常用于展示大量数据。然而,在实际应用中,我们经常需要将 DBGrid 中的数据导出到其他格式,例如 Excel,以便于数据分析和处理。下面...

    导出Excel功能,导出Excel功能,导出Excel功能

    在IT领域,导出Excel功能是一项非常常见的需求,特别是在数据分析、报表生成以及数据共享等场景中。Excel作为一款强大的电子表格软件,因其易用性、灵活性和强大的计算能力,成为了企业和个人处理数据的首选工具。...

    GridControl通用导出Excel

    ### GridControl通用导出Excel知识点解析 #### 一、GridControl通用导出Excel概述 GridControl是DevExpress提供的一款用于展示和编辑数据的强大组件。在实际应用中,常常需要将GridControl中的数据导出到Excel中,...

    易语言高级表格快速导出EXCEL

    在"易语言高级表格快速导出EXCEL"这个项目中,开发者可能需要实现以下关键技术点: 1. **数据结构与表格对象**:首先,需要在易语言中创建合适的数据结构来存储表格数据,这通常涉及数组或链表等数据类型。同时,...

    jquery 导出excel方法

    下面将详细介绍jQuery导出Excel的方法,以及相关知识点。 1. **jQuery插件:TableExport** 文件`tableExport.jquery.plugin-a891806`可能是一个名为TableExport的jQuery插件,它允许开发者将HTML表格数据导出为...

    ext实现导出excel的功能。

    在EXTJS这个强大的JavaScript框架中,实现导出Excel功能是一项常见的需求。EXTJS提供了一种高效的方法来将数据导出到Excel格式,使得用户能够方便地处理和分析数据。在这个场景下,我们可以从以下几个关键知识点入手...

    C# NPOI 导出Excel

    本资源提供的"004ExportExcelDemo"示例将帮助你了解如何使用NPOI来导出Excel数据。 首先,让我们了解一下NPOI的基本概念。NPOI主要包含两个主要组件:HSSF(Horrible SpreadSheet Format)用于处理旧版的Excel 97-...

    cxGrid带正副标题导出Excel

    在本主题"cxGrid带正副标题导出Excel"中,我们将探讨如何利用cxGrid控件在导出数据到Excel文件时,同时包含主标题(正标题)和副标题(副标题)。 首先,我们需要了解cxGrid的基本结构。cxGrid通常由几个主要部分...

    js导出excel.zip

    在JavaScript编程领域,导出Excel是一项常见的需求,特别是在Web应用中,用户可能需要将数据显示在Excel表格中以便进一步处理或存储。"js导出excel.zip"这个压缩包提供了一个解决方案,它结合了EasyUI和DataGrid组件...

    lodop导出ExcelDemo

    【lodop导出ExcelDemo】是一个基于LODOP技术实现的JavaScript示例,它展示了如何通过LODOP组件将网页中的数据导出为Excel文件。这个功能在许多Web应用程序中非常实用,允许用户方便地保存和处理数据。下面将详细阐述...

    Excel通用导出excel文件

    "Excel通用导出excel文件"这个主题涵盖了如何在不同情况下高效地实现这一目标,不论你是要处理小规模的数据还是大规模的数据集。下面,我们将深入探讨Excel的通用导出功能,以及如何利用它来优化你的工作流程。 ...

    layui数据表格导出Excel插件

    layui数据表格导出Excel插件是一款为layui框架设计的实用工具,它允许用户方便地将layui数据表格中的数据导出到Excel文件中。layui是一款轻量级的前端UI框架,以其简洁、优雅的代码风格和丰富的组件库深受开发者喜爱...

    java导出excel POI jar包

    Java导出Excel是Java开发中常见的需求,尤其是在数据处理和报表生成方面。Apache POI库是Java领域中广泛使用的工具,它允许开发者读写Microsoft Office格式的文件,包括Excel(.xlsx和.xls)。本篇文章将深入讲解...

    易语言高级表格导出EXCEL

    在"易语言高级表格导出EXCEL"这个主题中,我们主要关注的是如何使用易语言来操作表格数据,并将这些数据高效地导出到Microsoft Excel格式。易语言提供了丰富的库函数和组件,使得开发者可以方便地实现对表格数据的...

    易语言高级表格快速导出EXCEL.7z

    《易语言高级表格快速导出EXCEL》是一个关于如何在易语言编程环境中高效地将数据导出为Excel格式的教程。易语言是中国本土开发的一种面向对象的、易学易用的编程语言,它旨在降低编程的难度,让更多人能够参与到程序...

Global site tag (gtag.js) - Google Analytics