Java读取csv写入数据库
时间: 2023-06-10 13:04:04 浏览: 142
好的,很高兴为您解答。Java读取csv并将其写入数据库可以使用以下步骤:
1. 首先,您需要使用Java中的CSV读取器来读取CSV文件的内容。可以使用第三方库,如OpenCSV或Super CSV,来读取CSV文件。您可以在Maven中添加这些库,以在代码中使用它们。
2. 接下来,将CSV文件中的数据存储在Java对象中,并使用JDBC(Java Database Connectivity)连接到数据库。您可以使用JDBC API将Java对象中的数据插入到数据库表中。在这之前,确保您已经创建了相应的表结构,以便可以将数据插入到正确的列中。
3. 一旦数据插入到表中,您可以使用JDBC API或ORM(Object-Relational Mapping)库,如Hibernate或MyBatis,来检索数据并将其用于您的应用程序。
希望这个答案能解决您的问题。
相关问题
Java读取csv写入数据库代码参考
你好,关于Java读取csv写入数据库的代码,可以参考下面的示例:
```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 CSVtoDatabase {
public static void main(String[] args) {
String csvFile = "path/to/csv/file.csv"; // csv文件路径
String jdbcUrl = "jdbc:mysql://localhost:3306/mydatabase"; // 数据库连接
String user = "myusername"; // 数据库用户名
String password = "mypassword"; // 数据库密码
String sql = "INSERT INTO mytable (col1, col2, col3) values (?, ?, ?)"; // 插入数据的SQL语句
try (Connection conn = DriverManager.getConnection(jdbcUrl, user, password);
PreparedStatement statement = conn.prepareStatement(sql);
BufferedReader br = new BufferedReader(new FileReader(csvFile))) {
String line;
while ((line = br.readLine()) != null) {
String[] data = line.split(","); // 按逗号分隔csv文件中的数据
statement.setString(1, data[0]); // 设置SQL语句中的参数
statement.setString(2, data[1]);
statement.setString(3, data[2]);
statement.executeUpdate(); // 执行SQL语句
}
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
这段代码会读取指定路径的csv文件,按逗号分隔每一行的数据,并将其写入到指定的数据库表中。你需要替换代码中的相关参数,如csv文件路径、数据库连接、用户名、密码、插入数据的SQL语句等。
希望这能帮助到你!
java读取csv文件数据 写入mysql
Java读取CSV文件的数据并写入MySQL可以通过以下步骤完成:
1. 首先,你需要使用Java中的FileReader类来读取CSV文件。可以使用CSVReader或者BufferedReader来逐行读取CSV文件的内容。
2. 在读取CSV文件的同时,你可以使用StringTokenizer或者split方法将每一行数据拆分成字段,以便后续写入到MySQL中。
3. 接下来,你需要使用Java中的JDBC(Java Database Connectivity)来连接MySQL数据库。在连接数据库之前,你需要下载并添加数据库驱动程序(JDBC驱动)到你的Java项目中。
4. 一旦连接到MySQL数据库,你可以使用PreparedStatement准备SQL语句,并使用setString或者setInt等方法设置参数的值,将数据插入到MySQL数据库中。
5. 最后,你可以通过执行PreparedStatement的executeUpdate方法来执行SQL插入语句,并将CSV文件中的数据写入到MySQL数据库表中。
以下是一个简单的示例代码,用于读取CSV文件并将数据写入到MySQL数据库:
import java.io.BufferedReader;
import java.io.FileReader;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
public class CSVtoMySQLExample {
public static void main(String[] args) {
String csvFilePath = "path_to_csv_file.csv";
String jdbcURL = "jdbc:mysql://localhost:3306/db_name";
String username = "your_username";
String password = "your_password";
try (Connection connection = DriverManager.getConnection(jdbcURL, username, password);
BufferedReader br = new BufferedReader(new FileReader(csvFilePath))) {
String line;
while ((line = br.readLine()) != null) {
String[] data = line.split(",");
String sql = "INSERT INTO table_name (column1, column2, column3) VALUES (?, ?, ?)";
PreparedStatement statement = connection.prepareStatement(sql);
statement.setString(1, data[0]);
statement.setString(2, data[1]);
statement.setString(3, data[2]);
statement.executeUpdate();
}
System.out.println("Data imported successfully!");
} catch (Exception e) {
e.printStackTrace();
}
}
}
请注意,以上代码仅作为示例,你需要根据你的实际情况修改数据库连接信息、CSV文件路径以及插入数据的SQL语句。
阅读全文