Java 从 Excel 导入数据到数据库96


在实际开发中,我们经常需要将 Excel 中数据导入到数据库中进行存储、管理和分析。使用 Java 语言,我们可以轻松实现这一任务。本文将介绍使用 Apache POI 和 JDBC 将 Excel 数据导入数据库的详细步骤,并提供代码示例。

先决条件

在开始之前,请确保已经准备好以下内容:- Java 开发环境(JDK 8 或更高版本)
- Apache POI 库
- JDBC 驱动程序(与目标数据库相对应)

步骤 1:创建 Java 项目

创建一个新的 Java 项目并添加必要的依赖项。对于 Maven 项目,请在 文件中添加以下依赖项:```xml



poi
5.2.2


mysql
mysql-connector-java
8.0.30


```

步骤 2:解析 Excel 文件

使用 Apache POI 解析 Excel 文件并提取数据。以下代码示例演示如何读取第一个工作表中的数据:```java
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
public class ExcelParser {
public static List parseExcel(String filePath) throws Exception {
List data = new ArrayList();
try (FileInputStream fis = new FileInputStream(filePath);
Workbook workbook = (fis)) {
Sheet sheet = (0);
for (Row row : sheet) {
List rowData = new ArrayList();
for (Cell cell : row) {
(());
}
(rowData);
}
}
return data;
}
}
```

步骤 3:连接到数据库

使用 JDBC 连接到目标数据库并创建相应的语句。```java
import ;
import ;
import ;
public class DatabaseConnection {
public static Connection getConnection() throws Exception {
String url = "jdbc:mysql://localhost:3306/database_name";
String username = "user_name";
String password = "password";
return (url, username, password);
}
}
```

步骤 4:导入数据

使用 PreparedStatement 将 Excel 数据批量导入数据库。```java
import ;
import ;
import ;
public class DataImporter {
public static void importData(Connection connection, List data) throws Exception {
String sql = "INSERT INTO table_name (column1, column2, ...) VALUES (?, ?, ...)";
try (PreparedStatement statement = (sql)) {
for (List rowData : data) {
for (int i = 0; i < (); i++) {
(i + 1, (i));
}
();
}
();
}
}
}
```

步骤 5:运行 Java 代码

运行 Java 代码以执行导入过程。以下示例代码展示了如何将 Excel 文件中的数据导入到 MySQL 数据库:```java
import ;
public class Main {
public static void main(String[] args) throws Exception {
String excelFilePath = "path/to/";
List data = (excelFilePath);
Connection connection = ();
(connection, data);
();
}
}
```

通过使用 Apache POI 和 JDBC,可以轻松地将 Excel 中的数据导入到数据库中。本文提供了详细的步骤和代码示例,以便开发人员能够轻松地完成此任务。通过遵循这些步骤,您将能够有效地管理和存储来自 Excel 文件的大量数据。

2024-10-16


上一篇:Java 应用程序主类的正确 Main() 方法

下一篇:Java 基本数据类型大小:深入解析