21xrx.com
2024-11-22 07:55:37 Friday
登录
文章检索 我的文章 写文章
如何在Java中实现将文件导入数据库操作?
2023-06-15 18:07:19 深夜i     --     --
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();

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复