Java 如何将数据从数据库加载到excel工作表

Java 如何将数据从数据库加载到excel工作表,java,javafx,apache-poi,javafx-2,javafx-8,Java,Javafx,Apache Poi,Javafx 2,Javafx 8,我需要将数据从数据库加载到excel工作表。所以当我运行代码时抛出这个异常。 这就是我目前正在处理的问题。 数据库表名为pettycash,所以我需要从该表加载数据 private void excelTest(ActionEvent event) { try { String cococo = "select * from pettycash"; ResultSet rs = database.DB_Connector.search(cococo);

我需要将数据从数据库加载到excel工作表。所以当我运行代码时抛出这个异常。 这就是我目前正在处理的问题。 数据库表名为pettycash,所以我需要从该表加载数据

private void excelTest(ActionEvent event) {
    try {
        String cococo = "select * from pettycash";
        ResultSet rs = database.DB_Connector.search(cococo);

        XSSFWorkbook wb = new XSSFWorkbook();
        XSSFSheet sheet = wb.createSheet("pettycash");
        XSSFRow Header = sheet.createRow(0);
        Header.createCell(0).setCellValue("Petty ID");
        Header.createCell(1).setCellValue("pettycash_static_ammount");
        Header.createCell(2).setCellValue("pettycash_balance");
        Header.createCell(3).setCellValue("pettygiv_Date");
        Header.createCell(4).setCellValue("pettycash_status");
        Header.createCell(5).setCellValue("Rider_idRider");

        int index = 1;
        while (rs.next()) {

            XSSFRow row = sheet.createRow(index);
            row.createCell(0).setCellValue(rs.getString("idpettycash"));
            row.createCell(1).setCellValue(rs.getString("pettycash_static_ammount"));
            row.createCell(2).setCellValue(rs.getString("pettycash_balance"));
            row.createCell(3).setCellValue(rs.getString("pettygiv_Date"));
            row.createCell(4).setCellValue(rs.getString("pettycash_status"));
            row.createCell(5).setCellValue(rs.getString("Rider_idRider"));
            index++;

        }

        FileOutputStream fileout = new FileOutputStream("petycash.xlsx");
        wb.write(fileout);
        fileout.close();

    } catch (Exception e) {
        e.printStackTrace();
    }
}
您可以使用它手动执行您试图执行的操作。一行代码:

writer.writeAll(rs, includeHeaders);

看看这个解决方案,使用


当我运行代码时抛出这个异常。在问题中发布完整的,并指出您发布的代码中哪一行引发异常。问题是询问如何将数据库文件写入Excel电子表格文件,以及发布的代码为何引发异常。CSV与XLSX不同。这并没有回答被问到的问题。
private void excelTest(ActionEvent event) {
    try {
        String cococo = "select * from pettycash";
        PreparedStatement prepStmt = database.DB_Connector.preparedStatement(cococo);

        File file = new File("petycash.xlsx");

        new MempoiBuilder()
                .setFile(file)
                .addMempoiSheet(new MempoiSheet(prepStmt))
                .build()
                .prepareMempoiReportToFile()
                .get();

    } catch (Exception e) {
        e.printStackTrace();
    }
}