Este ejemplo comparte con usted cómo exportar todas las tablas de una base de datos en Excel para su referencia. El contenido específico es el siguiente
Paso 1: Cómo operar Excel con POI
@Test public void createExls () lanza la excepción {// declarar un libro de trabajo hssfworkbook wb = new hssfworkbook (); // declarar la tabla hssfsheet hoja = wb.createSheet ("primera tabla"); // declarar fila hssfrow row = sheet.createrow (7); // declarar columna hssfcell cel = row.createCell (3); // Escribir datos cel.setCellValue ("También eres bueno"); FileOutputStream fileOut = new FileOutputStream ("d: /a/b.xls"); wb.write (fileOut); fileout.close (); }Paso 2: Exportar todas las tablas de la base de datos especificada
analizar:
1: ¿Cuántas tablas tiene una determinada base de datos de números y cuál es el nombre de la tabla? DatabaseMetadate.getMetadate (). GetTables (null, null, null, new String [] {table}); - El nombre del archivo de Excel.
2: Realice una operación select * en cada tabla. - El nombre de cada hoja.
3: Analizar la estructura de la tabla, rs.getMetadate (); Resultado de resultados
4: Múltiples columnas, ¿cuáles son los nombres de la columna? - El nombre del campo es la primera información de la fila de la hoja.
5: Obtenga los datos de cada fila y póngalos en la primera fila de la hoja.
@Test public void export () lanza la excepción {// Declarar la base de datos que debe exportarse cadena dbname = "foco"; // declarar libro HSSFWorkBook Book = new HSSFWorkBook (); // Obtener conexión, obtener DB Metadata Connection Con = DataSourceUtil.getConn (); // declarar la declaración st = con.createStatement (); //st.execute("USE "+dbname); DataBASEMETAdata dmd = con.getMetMeData (); // Obtenga cuántas tablas la base de datos tiene resultados rs = dmd.gettables (dbname, dbname, null, new String [] {"table"}); // Obtenga todos los nombres de la tabla: es una lista de hoja <String> Tablas = new ArrayList <String> (); while (rs.next ()) {string tableName = rs.getString ("table_name"); Tablas.Add (Tablename); } for (String TableName: Tablas) {HSSFSheet hoja = book.createSheet (TableName); // Declarar SQL String SQL = "SELECT * de"+DBNAME+"."+TableName; // Datos de consulta rs = St.ExecuteQuery (SQL); // Analizar los metadatos del conjunto de resultados en función de la consulta resultsetSetMetadata rsmd = rs.getMetadata (); // Obtener cuántas filas hay en esta consulta int cols = rsmd.getColumnCount (); // Obtenga todos los nombres de la columna // Cree la primera fila hssfrow row = sheet.createrow (0); for (int i = 0; i <cols; i ++) {string colname = rsmd.getColumnName (i+1); // Crear una nueva columna HSSFCell Cell = Row.CreateCell (i); // escribir nombre de columna Cell.SetCellValue (colname); } // transferir datos int index = 1; while (rs.next ()) {row = sheet.createrow (index ++); // declarar columna para (int i = 0; i <cols; i ++) {string val = rs.getString (i+1); // declarar columna hssfcell cel = row.createCell (i); // Publicar datos CEL.SetCellValue (Val); }}} con.close (); book.write (nuevo FileOutputStream ("D:/a/"+dbname+". Xls")); }Lo anterior se trata de este artículo, espero que sea útil para el aprendizaje de todos.