Java 从数据库中检索数据,并将每个结果集存储在excel工作表中

Java 从数据库中检索数据,并将每个结果集存储在excel工作表中,java,jdbc,apache-poi,Java,Jdbc,Apache Poi,我必须从数据库中的各个表中检索数据,并将每个表值存储为ResultSet。然后,我需要在单个excel文件的每个工作表中填充每个ResultSet值。因此,我需要在excel文件的一张单独的表格中,用列名编写每个表的值。提前感谢我从其他人那里得到了这个,但我想它也可以应用于你的情况 try { Class.forName("driverName"); //driver name Connection con = DriverManager.getConnection("url", "user"

我必须从数据库中的各个表中检索数据,并将每个表值存储为ResultSet。然后,我需要在单个excel文件的每个工作表中填充每个ResultSet值。因此,我需要在excel文件的一张单独的表格中,用列名编写每个表的值。提前感谢

我从其他人那里得到了这个,但我想它也可以应用于你的情况

try {
Class.forName("driverName");  //driver name
Connection con = DriverManager.getConnection("url", "user", "pass");
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("Select * from tablename"); //table you want to get information from
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet("sheetName"); //name the sheet
HSSFRow rowhead = sheet.createRow((short) 0);
rowhead.createCell((short) 0).setCellValue("CellHeadName1"); //name the cells 
rowhead.createCell((short) 1).setCellValue("CellHeadName2");
rowhead.createCell((short) 2).setCellValue("CellHeadName3");
int i = 1;
while (rs.next()){
    HSSFRow row = sheet.createRow((short) i);
    row.createCell((short) 0).setCellValue(Integer.toString(rs.getInt("column1"))); //name columns
    row.createCell((short) 1).setCellValue(rs.getString("column2"));
    row.createCell((short) 2).setCellValue(rs.getString("column3"));
    i++;
}
String xlss= "g:/test.xls";  //the file you want the data put into
FileOutputStream fileOut = new FileOutputStream(xlss);
workbook.write(fileOut);
fileOut.close();
} catch (ClassNotFoundException e1) {
   e1.printStackTrace();
} catch (SQLException e1) {
    e1.printStackTrace();
} catch (FileNotFoundException e1) {
    e1.printStackTrace();
} catch (IOException e1) {
    e1.printStackTrace();
}

您实际上没有提出问题或描述确切的问题-您所做的只是告诉我们您的作业是什么。我是否可以创建更多的工作表,如HSSFSheet sheet1=workbook.createSheet(“sheetName1”);你可以试试,我不知道,因为我没试过yetYes。。它正在工作。它可以创建多张图纸。谢谢@George Oke