将可变列数从查询导出到excel

时间:2013-04-12 13:53:37

标签: java excel apache-poi export-to-excel resultset

我正在尝试将复杂查询的输出写入Excel。为此,我使用JDBC并创建了一个返回类型为'ResultSet'的函数,通过它我将获得Query的输出。

要将ResultSet Rows写入excel,我应该如下所示:

        HSSFRow row = firstSheet.createRow(index);
    row.createCell(0).setCellValue(rs.getInt(1));
    row.createCell(1).setCellValue(rs.getInt(2));
    row.createCell(2).setCellValue(rs.getString(2));
    row.createCell(3).setCellValue(rs.getString(3));

现在的问题是,复杂查询的结果集包含可变数量的行和列,具体取决于我们运行查询的日期,需要导出到excel。是否有任何可行的方法通过编程我可以处理这种情况并将查询结果导出到Excel。

提前致谢。

1 个答案:

答案 0 :(得分:2)

您应该使用ResultSet.getMetaData()方法,例如,迭代ResultSetMetaData.getColumnCount()次。