从Excel读取数据并写入MySQL数据库
在实际开发中,我们经常需要将Excel表格中的数据导入到数据库中,这里以Java语言为例,介绍如何读取Excel文件并将数据写入MySQL数据库。
准备工作
在开始之前,需要确保已经安装好Java开发环境和MySQL数据库,并在项目中引入相关的依赖包进行操作。
依赖包
在pom.xml
文件中添加以下依赖:
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.2</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.1.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.23</version>
</dependency>
读取Excel数据
首先,需要编写一个方法来读取Excel文件中的数据:
import org.apache.poi.ss.usermodel.*;
import java.io.FileInputStream;
import java.util.Iterator;
public class ExcelReader {
public void readExcel(String filePath) {
try {
FileInputStream file = new FileInputStream(filePath);
Workbook workbook = WorkbookFactory.create(file);
Sheet sheet = workbook.getSheetAt(0);
Iterator<Row> rowIterator = sheet.iterator();
while (rowIterator.hasNext()) {
Row row = rowIterator.next();
Iterator<Cell> cellIterator = row.cellIterator();
while (cellIterator.hasNext()) {
Cell cell = cellIterator.next();
System.out.print(cell.toString() + " ");
}
System.out.println();
}
file.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
写入MySQL数据库
接下来,编写一个方法将Excel数据写入MySQL数据库:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
public class MySQLWriter {
public void writeToDatabase(String data) {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "password");
String query = "INSERT INTO table_name (column_name) VALUES (?)";
PreparedStatement statement = connection.prepareStatement(query);
statement.setString(1, data);
statement.executeUpdate();
connection.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
序列图
使用Mermaid语法来表示读取Excel并写入MySQL的序列图:
sequenceDiagram
participant ExcelReader
participant MySQLWriter
ExcelReader->>ExcelReader: 读取Excel数据
ExcelReader->>MySQLWriter: 将数据传递给MySQLWriter
MySQLWriter->>MySQLWriter: 写入数据库
关系图
使用Mermaid语法来表示数据库表与字段的关系图:
erDiagram
CUSTOMER {
int id
varchar name
}
结尾
通过以上代码示例和图表,我们可以了解到如何使用Java读取Excel数据并写入MySQL数据库。在实际应用中,我们可以根据需求对代码进行修改和优化,以满足具体的业务需求。希望这篇文章对你有所帮助。