温馨提示×

Java如何实现文件导入数据库

小亿
117
2023-09-15 17:58:33
栏目: 编程语言

在Java中,可以使用Java IO库中的类来实现文件导入数据库的功能。下面是一个简单的示例代码:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class FileImporter {
   public static void main(String[] args) {
       String filename = "data.csv"; // 文件名
       String url = "jdbc:mysql://localhost:3306/db_name"; // 数据库连接URL
       String username = "username"; // 数据库用户名
       String password = "password"; // 数据库密码
       
       try (Connection conn = DriverManager.getConnection(url, username, password);
            BufferedReader br = new BufferedReader(new FileReader(filename))) {
           String line;
           String sql = "INSERT INTO table_name (column1, column2, column3) VALUES (?, ?, ?)"; // 插入语句
           
           PreparedStatement pstmt = conn.prepareStatement(sql);
           
           while ((line = br.readLine()) != null) {
               String[] data = line.split(","); // 假设文件是逗号分隔的
               
               // 设置参数
               pstmt.setString(1, data[0]);
               pstmt.setString(2, data[1]);
               pstmt.setString(3, data[2]);
               
               pstmt.executeUpdate(); // 执行插入语句
           }
           
           System.out.println("文件导入完成!");
       } catch (SQLException e) {
           e.printStackTrace();
       } catch (Exception e) {
           e.printStackTrace();
       }
   }
}
```
在上述代码中,我们使用了`BufferedReader`来读取文件,使用`PreparedStatement`来执行插入操作,并且通过`split`函数将每一行数据拆分成字符串数组。然后,我们根据需要将数据设置为预处理语句的参数,最后执行插入操作。请根据自己的实际情况修改数据库连接URL、用户名、密码、文件名、插入语句以及列数和数据类型。

0