21xrx.com
2025-03-29 14:06:05 Saturday
文章检索 我的文章 写文章
如何在Java中实现将文件导入数据库操作?
2023-06-15 18:07:19 深夜i     27     0
Java 文件导入 数据库 JDBC CSV文件

在Java开发中经常会遇到将文件导入到数据库的需求,本文将介绍如何使用Java实现将文件导入数据库的操作。

我们以将CSV文件导入MySQL数据库为例,以下是步骤:

1. 创建数据库和表

要将数据导入到MySQL数据库中,需要先创建相应的数据库和表。可以使用MySQL Workbench进行创建,或者使用以下SQL语句:

CREATE DATABASE IF NOT EXISTS test_db;
USE test_db;
CREATE TABLE IF NOT EXISTS test_table (
 col1 INT NOT NULL,
 col2 VARCHAR(255) NOT NULL,
 PRIMARY KEY (col1)
);

2. 读取CSV文件

接下来我们要读取CSV文件中的数据。可以使用Java自带的CSV解析库opencsv来读取,也可以手动解析。

以下是使用opencsv读取CSV文件并将数据存储在List中的示例代码:

Reader reader = Files.newBufferedReader(Paths.get("data.csv"));
CSVReader csvReader = new CSVReaderBuilder(reader).withSkipLines(1).build(); // 第一行为标题,跳过
List
  data = csvReader.readAll();

3. 连接数据库

接下来我们需要连接MySQL数据库。可以使用Java自带的JDBC驱动连接,或者使用一些第三方库,比如Hibernate。

以下是使用JDBC连接MySQL的示例代码:

Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test_db", "root", "password");

4. 将数据插入数据库

最后,我们要将数据插入到MySQL数据库中。可以使用JDBC提供的PreparedStatement来完成插入操作。

以下是使用JDBC将数据插入MySQL数据库的示例代码:

PreparedStatement stmt = conn.prepareStatement("INSERT INTO test_table (col1, col2) VALUES (?, ?)");
for (String[] row : data) {
 stmt.setInt(1, Integer.parseInt(row[0]));
 stmt.setString(2, row[1]);
 stmt.executeUpdate();
}
stmt.close();
conn.close();

  
  

评论区