javaでexcelをデータベースへ取り込む方法

Excelをデータベースにインポートするには、Apache POIライブラリを使用してExcelファイルを読み取り、JDBCを使用してデータベースに接続し、データをデータベースにインサートします。以下のコードは、簡単なサンプルです。

import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class ExcelToDatabase {

public static void main(String[] args) {

 

String excelFilePath = “path/to/excel/file.xlsx”;

 

String url = “jdbc:mysql://localhost:3306/database_name”;

 

String username = “username”;

 

String password = “password”;

 

try (Connection connection = DriverManager.getConnection(url, username, password)) {

 

FileInputStream inputStream = new FileInputStream(excelFilePath);

 

Workbook workbook = new XSSFWorkbook(inputStream);

 

Sheet sheet = workbook.getSheetAt(0);

 

String insertQuery = “INSERT INTO table_name (column1, column2, column3) VALUES

 

(?, ?, ?)”;

 

PreparedStatement statement = connection.prepareStatement(insertQuery);

 

for (int i = 1; i <= sheet.getLastRowNum(); i++) {

 

Row row = sheet.getRow(i);

 

Cell cell1 = row.getCell(0);

 

Cell cell2 = row.getCell(1);

 

Cell cell3 = row.getCell(2);

 

String value1 = cell1.getStringCellValue();

 

String value2 = cell2.getStringCellValue();

 

String value3 = cell3.getStringCellValue();

 

statement.setString(1, value1);

 

statement.setString(2, value2);

 

statement.setString(3, value3);

 

statement.executeUpdate();

 

}

 

workbook.close();

 

System.out.println(“Excel imported to database successfully!”);

 

} catch (Exception e) {

 

e.printStackTrace();

 

}

 

} }


必ずApache POIとMySQL JDBCドライバの依存関係を追加してください。コード内で、path/to/excel/file.xlsxを実際のExcelファイルのパスに置き換え、jdbc:mysql://localhost:3306/database_nameを実際のデータベース接続URLに、usernameとpasswordを実際のデータベースのユーザー名とパスワードに、table_nameを実際のデータベースのテーブル名に、column1、column2、column3を実際のデータベースのテーブル列名に置き換える必要があります。

bannerAds