首页 开发百科文章正文

java 导入excel数据并存到数据库

开发百科 2025年11月21日 00:10 242 admin

Java导入Excel数据并存储到数据库的完整指南

在现代软件开发中,经常需要将Excel文件中的数据导入到数据库中进行进一步的处理或分析,使用Java编程语言,我们可以借助Apache POI库来读取Excel文件,并利用JDBC(Java Database Connectivity)来将数据存储到数据库中,本文将详细介绍如何使用Java实现这一功能,包括必要的步骤和代码示例。

确保你的开发环境中已经安装了Apache POI库和适合你的数据库类型的JDBC驱动,如果你使用的是MySQL数据库,你需要下载MySQL的JDBC驱动并将其添加到项目的构建路径中。

我们将编写Java代码来导入Excel数据并存储到数据库中,以下是一个简单的例子,演示如何从一个名为"data.xlsx"的Excel文件中读取数据,并将这些数据插入到一个名为"users"的MySQL数据库表中。

java 导入excel数据并存到数据库

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.util.Iterator;
public class ExcelToDatabase {
    public static void main(String[] args) {
        String jdbcURL = "jdbc:mysql://localhost:3306/your_database";
        String username = "your_username";
        String password = "your_password";
        try (Connection connection = DriverManager.getConnection(jdbcURL, username, password);
             FileInputStream inputStream = new FileInputStream("data.xlsx");
             Workbook workbook = new XSSFWorkbook(inputStream)) {
            Sheet firstSheet = workbook.getSheetAt(0);
            Iterator<Row> rowIterator = firstSheet.iterator();
            while (rowIterator.hasNext()) {
                Row currentRow = rowIterator.next();
                Iterator<Cell> cellIterator = currentRow.iterator();
                int idColumn = 0;
                int nameColumn = 1;
                int emailColumn = 2;
                int id = (int) cellIterator.next().getNumericCellValue();
                String name = cellIterator.next().getStringCellValue();
                String email = cellIterator.next().getStringCellValue();
                try (PreparedStatement statement = connection.prepareStatement("INSERT INTO users (id, name, email) VALUES (?, ?, ?)")) {
                    statement.setInt(1, id);
                    statement.setString(2, name);
                    statement.setString(3, email);
                    statement.executeUpdate();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

在上面的代码中,我们首先建立了与MySQL数据库的连接,我们打开了Excel文件并读取了第一个工作表,对于每一行,我们提取了ID、姓名和电子邮件地址,并使用PreparedStatement将这些数据插入到"users"表中。

java 导入excel数据并存到数据库

这只是一个基本的例子,实际应用中可能需要处理更多的细节,比如错误处理、数据验证等。

标签: 导入Excel

发表评论

丫丫技术百科 备案号:新ICP备2024010732号-62