Java大批量Excel数据导入数据库

在实际的开发中,我们经常会面临将大批量的Excel数据导入到数据库的需求。本文将介绍如何使用Java来实现这一功能,同时提供代码示例和实际操作步骤。

准备工作

在开始之前,我们需要准备以下工具和环境:

  • JDK
  • Eclipse或IntelliJ IDEA等Java开发工具
  • MySQL数据库
  • Apache POI库(用于操作Excel文件)
  • JDBC驱动(用于连接数据库)

操作步骤

1. 创建数据库表

首先,在MySQL数据库中创建一个表,用于存储Excel数据。例如,我们创建一个名为employee的表,包含id, name, age, salary字段:

CREATE TABLE employee (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(50),
    age INT,
    salary DOUBLE
);

2. 编写Java代码

接下来,我们编写Java代码,使用Apache POI库读取Excel文件,并将数据导入数据库。

import org.apache.poi.ss.usermodel.*;

import java.io.File;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;

public class ExcelImporter {

    public static void main(String[] args) {
        String jdbcUrl = "jdbc:mysql://localhost:3306/your_database";
        String username = "your_username";
        String password = "your_password";

        try {
            Connection conn = DriverManager.getConnection(jdbcUrl, username, password);
            PreparedStatement pstmt = conn.prepareStatement("INSERT INTO employee (name, age, salary) VALUES (?, ?, ?)");

            FileInputStream file = new FileInputStream(new File("data.xlsx"));
            Workbook workbook = WorkbookFactory.create(file);
            Sheet sheet = workbook.getSheetAt(0);

            for (Row row : sheet) {
                if (row.getRowNum() == 0) {
                    continue;
                }

                String name = row.getCell(0).getStringCellValue();
                int age = (int) row.getCell(1).getNumericCellValue();
                double salary = row.getCell(2).getNumericCellValue();

                pstmt.setString(1, name);
                pstmt.setInt(2, age);
                pstmt.setDouble(3, salary);

                pstmt.executeUpdate();
            }

            pstmt.close();
            conn.close();
            file.close();
            workbook.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

3. 运行代码

在运行代码之前,确保已经将Excel文件命名为data.xlsx并放在项目根目录下。然后执行Java程序,即可将Excel数据导入到数据库。

总结

本文介绍了如何使用Java实现大批量Excel数据导入数据库的操作。通过Apache POI库和JDBC驱动,我们可以方便地读取Excel文件并将数据存储到数据库中。希望本文对您有所帮助!

pie
    title 数据分析结果
    "20%" : 20
    "30%" : 30
    "50%" : 50
journey
    title 数据导入流程
    section 数据准备
    section 代码编写
    section 运行程序

通过以上操作步骤和代码示例,您可以轻松地实现大批量Excel数据导入数据库的功能。祝您顺利完成!