将MySQL数据库中的多个表导出到Excel文件,并在一个Excel文件中以多个sheet的形式存储下来。
1、建立Excel文件,并获取数据表数据:
private static void process(String[] sqls) {
Connection conn = getMySqlConnection();
HSSFWorkbook workbook = new HSSFWorkbook();//声明工作薄
Statement st = null;
ResultSet rs = null;
int count = sqls.length;
for (String sql : sqls) {
try {
st = conn.createStatement();
rs = st.executeQuery(sql);
ResultSetMetaData data = rs.getMetaData();//根据查询的结果,分析结果集的元数据
System.out.println("execute sql : " + sql);
creatExcel(workbook, rs, data, count--);
} catch (SQLException e) {
e.printStackTrace();
}
}
Toolkit.close(conn, rs, st);
System.out.println("--- process end ---");
}
2、创建Excel文件中的不同表,并将数据写入表中:
public static void creatExcel(HSSFWork