<dependencies> <dependency> <groupId>com.github.julianpadawan</groupId> <artifactId>csveed</artifactId> <version>0.11</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.27</version> </dependency> </dependencies> import com.github.julianpadawan.csveed.CsvClient; import com.github.julianpadawan.csveed.annotations.CsvIgnore; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; public class CsvToDatabaseImporter { private static final String CSV_FILE_PATH = "/path/to/csv/file.csv"; private static final String DB_URL = "jdbc:mysql://localhost:3306/mydatabase"; private static final String DB_USERNAME = "root"; private static final String DB_PASSWORD = "password"; @CsvIgnore public static void main(String[] args) { try (Connection connection = DriverManager.getConnection(DB_URL, DB_USERNAME, DB_PASSWORD); PreparedStatement preparedStatement = connection.prepareStatement("INSERT INTO table_name (column1, column2) VALUES (?, ?)")) { CsvClient<CsvDataObject> client = new CsvClient<>(CsvDataObject.class); client.read(new File(CSV_FILE_PATH), dataObject -> { preparedStatement.setString(1, dataObject.getColumn1()); preparedStatement.setString(2, dataObject.getColumn2()); preparedStatement.executeUpdate(); }); System.out.println("CSV data imported to the database successfully!"); e.printStackTrace(); } } public static class CsvDataObject { private String column1; private String column2; // Getters and setters public String getColumn1() { return column1; } public void setColumn1(String column1) { this.column1 = column1; } public String getColumn2() { return column2; } public void setColumn2(String column2) { this.column2 = column2; } } } import com.github.julianpadawan.csveed.CsvClient; import com.github.julianpadawan.csveed.annotations.CsvCell; import com.github.julianpadawan.csveed.annotations.CsvHeader; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.sql.*; import java.util.ArrayList; import java.util.List; public class DatabaseToCsvExporter { private static final String CSV_FILE_PATH = "/path/to/output/file.csv"; private static final String DB_URL = "jdbc:mysql://localhost:3306/mydatabase"; private static final String DB_USERNAME = "root"; private static final String DB_PASSWORD = "password"; @CsvIgnore public static void main(String[] args) { try (Connection connection = DriverManager.getConnection(DB_URL, DB_USERNAME, DB_PASSWORD); Statement statement = connection.createStatement()) { ResultSet resultSet = statement.executeQuery("SELECT * FROM table_name"); List<DatabaseRow> dataList = new ArrayList<>(); while (resultSet.next()) { DatabaseRow row = new DatabaseRow(); row.setColumn1(resultSet.getString("column1")); row.setColumn2(resultSet.getString("column2")); dataList.add(row); } CsvClient<DatabaseRow> client = new CsvClient<>(DatabaseRow.class); File outputFile = new File(CSV_FILE_PATH); try (FileWriter writer = new FileWriter(outputFile)) { client.write(dataList, writer); } System.out.println("Data exported to CSV file successfully!"); e.printStackTrace(); } } @CsvHeader(columnNames = {"Column 1", "Column 2"}) public static class DatabaseRow { @CsvCell private String column1; @CsvCell private String column2; // Getters and setters public String getColumn1() { return column1; } public void setColumn1(String column1) { this.column1 = column1; } public String getColumn2() { return column2; } public void setColumn2(String column2) { this.column2 = column2; } } }


上一篇:
下一篇:
切换中文