`
lixielong
  • 浏览: 16045 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

POI生成Excel报表

阅读更多
这两天在学习了程序生成excel报表

Java中生成excel主要有两种:POI和Excel API

我用到的是POI。。。。。

以下是我测试的代码:

Java类:

public class PoiTest {
public static void main(String[] args) throws Exception {
  FileOutputStream fos = new FileOutputStream("d:\\foo.xls");
  String sql = "select * from fullsegment";
  List list = new ArrayList();
  list = new ExcelDao().Select(sql);
  HSSFWorkbook wb = new HSSFWorkbook();
  HSSFSheet s = wb.createSheet();
  wb.setSheetName(0, "Matrix");
  for(short i=0; i<list.size(); i++) {
     HSSFRow row = s.createRow(i);
     for(short j=0; j<6; j++) {
      HSSFCell cell = row.createCell(j);
      //cell.setCellValue(""+i+","+j);
     cell.setCellFormula((String) ((List)list.get(i)).get(j));
     //cell.set
     }
  }
  wb.write(fos);
  fos.close();
}
}

dao类:

public class ExcelDao {
  private Connection conn = null;
     public ExcelDao() {
         conn = new DBProfile().initDB();
     }
     public List Select(String sql){
      List list = new ArrayList();
      List list1 = new ArrayList();
      try {
    Statement smt = conn.createStatement();
    ResultSet rs = smt.executeQuery(sql);
    while(rs.next()){/*
     int start = rs.getInt("start");
     int end = rs.getInt("end");
     String area = rs.getString("area");
     int areaid = rs.getInt("areaid");
     int type = rs.getInt("type");
     int cityid= rs.getInt("cityid");*/
     list.add(rs.getString("start"));
     list.add(rs.getString("end"));
     list.add(rs.getString("area"));
     list.add(rs.getString("areaid"));
     list.add(rs.getString("type"));
     list.add(rs.getString("cityid"));
     list1.add(list);
    }
    rs.close();
    smt.close();
   } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
      return list1;
     }
}

数据库表:

CREATE TABLE `fullsegment` (
  `start` bigint(13) unsigned NOT NULL default '0',
  `end` bigint(13) unsigned NOT NULL default '0',
  `area` varchar(10) character set utf8 NOT NULL default '',
  `areaid` smallint(9) NOT NULL default '0',
  `type` tinyint(3) NOT NULL default '0',
  `cityid` smallint(5) NOT NULL default '0',
  UNIQUE KEY `start` (`start`,`end`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC;
以上代码我测试过,成功的话,会在D盘下创建一个foo.xls文件,如果表中记录不为空,

那么excel表中是有记录的。。。。。。


补充:

在查询数据库记录时,是有一个问题的,得到结果集之后取数据,如果是这样取数据:

int start = rs.getInt("start");
     int end = rs.getInt("end");
     String area = rs.getString("area");
     int areaid = rs.getInt("areaid");
     int type = rs.getInt("type");
     int cityid= rs.getInt("cityid");*/

那么会跑出一个sql异常:。。。is outside valid range for the datatype integer.
因为数据库表中字段的类型是bigint类型的

类型不匹配,就跑出上面的异常。。。。。解决方案未找到,但不会影响程序的运行

因此我用的是这种方式取数据:

list.add(rs.getString("start"));
     list.add(rs.getString("end"));
     list.add(rs.getString("area"));
     list.add(rs.getString("areaid"));
     list.add(rs.getString("type"));
     list.add(rs.getString("cityid"));
分享到:
评论

相关推荐

    POI生成excel报表

    ### POI生成Excel报表知识点详解 #### 一、Apache POI简介 Apache POI是Apache软件基金会的一个开源项目,主要用于处理Microsoft Office格式的文件。它提供了API来读写Word、Excel等Office文档格式。其中,处理...

    java利用poi生成excel报表、处理word文档

    在本场景中,我们关注的是如何利用POI来生成Excel报表以及处理Word文档。 一、Java POI与Excel报表生成 1. 创建Excel工作簿(Workbook):在Java中,我们首先需要创建一个`XSSFWorkbook`对象,它代表Excel工作簿。`...

    poi生成excel报表合并列

    通过分析和学习这个文件,你可以更好地理解如何用Apache POI生成带有合并列的Excel报表。 总结起来,Apache POI提供了一整套API来操作Excel文件,包括创建、修改和读取。在生成具有合并列和层次结构的报表时,我们...

    poi生成excel报表合并列和列

    在这个场景中,我们需要关注的是如何使用 POI 来生成具有合并列和行的 Excel 报表。 生成带有合并列和行的 Excel 报表主要涉及到两个关键方法:`mergeRow` 和 `genMergeCellByContent`。接下来,我们将详细介绍这两...

    java生成excel报表

    在压缩包文件“GreateExcel”中,可能包含了示例代码或教程,用于演示如何使用Apache POI生成Excel报表。通过阅读和学习这个文件,开发者可以更好地理解和掌握使用Apache POI创建Excel报表的具体方法和技巧,提升...

    poi jxl 生成EXCEL 报表

    总的来说,Apache POI 和 JExcelAPI 都是强大的工具,能够帮助Java开发者生成Excel报表。根据项目的具体需求和复杂性,可以选择适合的库进行使用。在实际开发中,务必确保选择的库版本与Java环境兼容,并根据项目...

    POI生成Excel POI操作Excel POI读取Excel POI类库

    **POI生成Excel** 生成Excel文件主要涉及以下步骤: 1. **创建Workbook对象**:这是Excel文件的顶级容器,可以是XSSFWorkbook(.xlsx格式)或HSSFWorkbook(.xls格式)。 2. **创建Sheet对象**:Sheet代表Excel...

    poi生成excel表格

    Apache POI 是一个开源项目...以上是Apache POI生成Excel表格的基本知识点和操作步骤。通过这些示例,你可以理解如何在Java应用中利用POI进行Excel文件的创建、读取和修改,以及如何结合数据库操作实现数据的导入导出。

    POI 生成EXCEL2007【含例子】

    标题 "POI 生成EXCEL2007【含例子】" 涉及到的知识点主要集中在Apache POI库的使用上,这是一个强大的Java API,用于读取、写入和修改Microsoft Office格式的文件,特别是Excel文件。在这个场景中,重点是创建和操作...

    java 生成Excel,可根据模板格式生成 Excel打印专用 报表

    在Java编程环境中,生成Excel报表是一项常见的任务,特别是在数据分析、数据导出或报表制作的场景中。本示例关注的是如何使用Java根据模板格式来创建适用于打印的专业Excel报表。这通常涉及到对Apache POI库的使用,...

    Struts结合poi.jar生成Excel报表

    在"Struts结合poi.jar生成Excel报表"的案例中,开发者首先需要将poi.jar库引入到项目中。这通常通过Maven或Gradle等依赖管理工具完成,或者直接将jar包添加到项目的类路径中。 poi.jar库包含了处理Excel文件所需的...

    生成excel报表(poi)公用方法AExcuteExcel

    标题中的“生成excel报表(poi)公用方法AExcuteExcel”指的是使用Apache POI库来创建Excel报表的一个通用方法,名为“AExcuteExcel”。Apache POI是Java领域中广泛使用的库,它允许开发者读写Microsoft Office格式...

    SpringMVC POI Excel 生成导出

    3. Excel 文件格式:Excel 是一个电子表格软件,广泛应用于数据分析和报表生成。 4. 生成 Excel 文件:使用 POI 库可以生成 Excel 文件,并将其写入输出流。 5. 下载文件:使用 SpringMVC 框架可以处理下载请求,并...

    poi导入导出excel生成报表

    ### POI 导入导出 Excel 生成报表详解 #### 一、概述 Apache POI 是一个用于读写 Microsoft Office 格式文件的 Java API,其中包括对 Excel 文件的支持。通过 POI,我们可以轻松地实现 Excel 文件的创建、读取、...

    使用ITEXT导出PDF、WORD,APACHE POI导出EXCEL报表文件

    在IT行业中,生成各种类型的文档是常见的需求,例如PDF、Word和Excel报表。本文将深入探讨如何使用ITEXT库导出PDF和Word,以及利用Apache POI库导出Excel报表文件。 首先,让我们来了解ITEXT库。ITEXT是一个开源...

    详解JAVA_POI导出EXCEL报表的操作(包括各种格式及样式的实现)

    利用Java POI,你可以方便地将数据导出到Excel报表中。除了基础的数据填充外,还可以实现复杂的表格布局、图表生成等功能。这对于需要定期生成报告或分析数据的应用场景尤其有用。 ### 五、总结 通过以上内容,我们...

    java poi 根据excel模板生成excel文件

    在本文中,我们将深入探讨如何使用Java POI库根据已有的Excel模板生成新的Excel文件。 首先,理解“模板”在Excel中的概念非常重要。模板通常包含预设的格式、样式、公式和数据结构,可以作为创建新文件的基础。在...

    poi 导出EXCEL 例子

    总结一下,Apache POI提供了一套强大的工具来处理Excel文件,使得在Java应用程序中生成Excel报表变得简单。在这个例子中,我们学习了如何创建一个新的工作簿,添加工作表,设置表头,插入数据行,以及最终保存到文件...

    JAVA使用POI生成Excel文件

    这篇博客"JAVA使用POI生成Excel文件"主要介绍了如何利用Apache POI来创建和操作Excel文档。 首先,我们需要了解Apache POI的基本概念。Apache POI是Apache软件基金会的一个开源项目,它提供了Java API,使得开发者...

    POI的EXCEL导出,自动换行

    ### POI的EXCEL导出,自动换行 在日常工作中,经常需要处理大量的数据导入导出任务,...无论是简单的数据导出还是复杂的报表生成,POI都能够提供相应的解决方案。希望本文能够帮助大家更好地理解和使用Apache POI。

Global site tag (gtag.js) - Google Analytics