Java 从数据库中导出数据到 Excel 表格206


对于 Java 开发人员来说,将数据导出到 Excel 表格是一种常见需求,本文将提供一种使用 Apache POI 库实现此操作的全面指南。

Apache POIApache POI 是一个 Java 库,用于处理 Microsoft Office 文件格式,包括 Excel、Word 和 PowerPoint。在本文中,我们将使用 POI 的 HSSF 和 XSSF 模块来处理 Excel 文件,具体取决于 Excel 文件的版本(HSSF 用于 .xls,XSSF 用于 .xlsx)。

步骤以下是将数据从数据库导出到 Excel 表格的步骤:

1. 建立数据库连接


使用 JDBC 连接到数据库并创建 Statement 对象。


```java
Connection connection = (dbUrl, username, password);
Statement statement = ();
```

2. 执行查询并获取结果集


执行查询并获取结果集。


```java
ResultSet resultSet = (query);
```

3. 创建工作簿和工作表


创建 HSSF 或 XSSF Workbook 对象,并创建一个新的工作表。


```java
// HSSFWorkbook for .xls files
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = ("sheet1");
// XSSFWorkbook for .xlsx files
XSSFWorkbook workbook = new XSSFWorkbook();
XSSFSheet sheet = ("sheet1");
```

4. 遍历结果集并填写 Excel 单元格


遍历结果集并在 Excel 工作表中填写单元格。


```java
int rowIndex = 0;
while (()) {
int cellIndex = 0;
(rowIndex);
(rowIndex).createCell(cellIndex).setCellValue(("id"));
cellIndex++;
(rowIndex).createCell(cellIndex).setCellValue(("name"));
cellIndex++;
(rowIndex).createCell(cellIndex).setCellValue(("salary"));
rowIndex++;
}
```

5. 保存工作簿


将工作簿保存到指定路径。


```java
FileOutputStream fileOut = new FileOutputStream(""); // or
(fileOut);
();
```

示例以下是一个示例代码,演示如何将数据从数据库导出到 Excel 表格:


```java
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
public class ExportDataToExcel {
public static void main(String[] args) {
String dbUrl = "jdbc:mysql://localhost:3306/database";
String username = "user";
String password = "password";
try (Connection connection = (dbUrl, username, password);
Statement statement = ()) {
String query = "SELECT * FROM employees";
ResultSet resultSet = (query);
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = ("Employees");
int rowIndex = 0;
while (()) {
HSSFRow row = (rowIndex);
HSSFCell idCell = (0);
(("id"));
HSSFCell nameCell = (1);
(("name"));
HSSFCell salaryCell = (2);
(("salary"));
rowIndex++;
}
CellStyle style = ();
();
for (int i = 0; i < () + 1; i++) {
HSSFRow row = (i);
for (int j = 0; j < (); j++) {
HSSFCell cell = (j);
(style);
}
}
FileOutputStream fileOut = new FileOutputStream("");
(fileOut);
();
("Data exported to Excel successfully.");
} catch (Exception e) {
();
}
}
}
```

使用 Java 和 Apache POI,您可以轻松地将数据从数据库导出到 Excel 表格。本文提供了详细的分步指南和代码示例,帮助您实现此操作。

2024-12-03


上一篇:Java 数据结构图解:深入理解数据结构基础

下一篇:java byte数组转字符串,一文读懂常见编码