使用apache poi将数据库查询结果导出为ex​​cel

use*_*635 1 java database excel apache-poi

我浏览了一些示例代码,使用Apache POI将数据导出到excel.但是,我不确定如何将数据库查询结果导出到excel文件.我知道我们必须在行中创建单元格,然后将值设置为单元格.但是我已经在结果集中拥有数据,并且必须将其导出到excel文件中.任何人都可以为我提供一个小/简单的代码来做同样的事情.

谢谢!

Zaw*_* oo 15

尝试:参考Apache POI的开发人员指南

示例人员表:

+------------------+
| NAME  | ADDRESS  |
+------------------+
| Jhone | USA      |  
| Smith | USA      |
+------------------+
Run Code Online (Sandbox Code Playgroud)

示例程序

Workbook wb = new HSSFWorkbook();
Sheet personSheet = wb.createSheet("PersonList");
Row headerRow = personSheet.createRow(0);
Cell nameHeaderCell = headerRow.createCell(0);
Cell addressHeaderCell = headerRow.createCell(1);

String sql = "select name, address from person_table";
PrepareStatement ps =  connection.prepareStatement(sql);
ResultSet resultSet = ps.executeQuery();    

int row = 1;
while(resultSet.next()) {
    String name = resultSet.getString("name");
    String address = resultSet.getString("address");

    Row dataRow = personSheet.createRow(row);

    Cell dataNameCell = dataRow.createCell(0);
    dataNameCell.setCellValue(name);

    Cell dataAddressCell = dataRow.createCell(1);
    dataAddressCell.setCellValue(address);

    row = row + 1;
}

String outputDirPath = "D:/PersonList.xls";
FileOutputStream fileOut = new FileOutputStream(outputDirPath);
wb.write(fileOut);
fileOut.close();
Run Code Online (Sandbox Code Playgroud)

  • 你好@CycDemo。你的回答真的很有帮助。如果要导出大量记录(列、行),有什么好的技术或您想建议的。 (2认同)