Utilisez Java pour implémenter la fonction d'opération par lots des données de formulaire
Dans le développement de logiciels modernes, la fonction d'opération par lots des données de formulaire est devenue une exigence courante. Par exemple, nous devrons peut-être insérer, mettre à jour ou supprimer par lots des données de formulaire. En utilisant le langage Java, nous pouvons facilement implémenter ces fonctions. Cet article vous expliquera comment utiliser Java pour implémenter des opérations par lots sur les données de formulaire et joindra des exemples de code pertinents.
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class DatabaseConnection { public static Connection getConnection() { Connection con = null; String url = "jdbc:mysql://localhost:3306/form_data"; String user = "root"; String password = "root"; try { con = DriverManager.getConnection(url, user, password); } catch (SQLException e) { e.printStackTrace(); } return con; } }
Dans l'exemple de code ci-dessus, nous avons utilisé la base de données MySQL et transmis l'URL de la base de données, le nom d'utilisateur et le mot de passe pour obtenir la connexion à la base de données.
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; public class BatchInsert { public static void main(String[] args) { Connection con = DatabaseConnection.getConnection(); PreparedStatement ps = null; String sql = "INSERT INTO form_table (`name`, `age`) VALUES (?, ?)"; try { con.setAutoCommit(false); ps = con.prepareStatement(sql); // 模拟批量插入数据 for (int i = 1; i <= 1000; i++) { ps.setString(1, "Name " + i); ps.setInt(2, i); ps.addBatch(); if (i % 100 == 0) { ps.executeBatch(); con.commit(); } } ps.executeBatch(); con.commit(); } catch (SQLException e) { try { con.rollback(); } catch (SQLException ex) { ex.printStackTrace(); } e.printStackTrace(); } finally { try { if (ps != null) ps.close(); if (con != null) con.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
Dans l'exemple de code ci-dessus, nous utilisons PreparedStatement pour précompiler l'instruction d'insertion et utilisons la méthode addBatch() pour ajouter une série d'opérations d'insertion au lot. . Lorsqu'une certaine taille de lot (telle que 100) est atteinte, nous utilisons la méthodeexecuteBatch() pour effectuer l'opération par lots et appelons la méthode commit() pour valider la transaction. Cela améliore l’efficacité de l’insertion.
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; public class BatchUpdate { public static void main(String[] args) { Connection con = DatabaseConnection.getConnection(); PreparedStatement ps = null; String sql = "UPDATE form_table SET age = ? WHERE id = ?"; try { con.setAutoCommit(false); ps = con.prepareStatement(sql); // 模拟批量更新数据 for (int i = 1; i <= 1000; i++) { ps.setInt(1, i * 2); ps.setInt(2, i); ps.addBatch(); if (i % 100 == 0) { ps.executeBatch(); con.commit(); } } ps.executeBatch(); con.commit(); } catch (SQLException e) { try { con.rollback(); } catch (SQLException ex) { ex.printStackTrace(); } e.printStackTrace(); } finally { try { if (ps != null) ps.close(); if (con != null) con.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
Dans l'exemple de code ci-dessus, nous utilisons PreparedStatement pour précompiler les instructions de mise à jour et utilisons la méthode addBatch() pour ajouter une série d'opérations de mise à jour au lot. . En définissant une taille de lot appropriée (disons 100), nous pouvons améliorer l'efficacité de la mise à jour.
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; public class BatchDelete { public static void main(String[] args) { Connection con = DatabaseConnection.getConnection(); PreparedStatement ps = null; String sql = "DELETE FROM form_table WHERE id = ?"; try { con.setAutoCommit(false); ps = con.prepareStatement(sql); // 模拟批量删除数据 for (int i = 1; i <= 1000; i++) { ps.setInt(1, i); ps.addBatch(); if (i % 100 == 0) { ps.executeBatch(); con.commit(); } } ps.executeBatch(); con.commit(); } catch (SQLException e) { try { con.rollback(); } catch (SQLException ex) { ex.printStackTrace(); } e.printStackTrace(); } finally { try { if (ps != null) ps.close(); if (con != null) con.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
Dans l'exemple de code ci-dessus, nous utilisons PreparedStatement pour précompiler l'instruction de suppression et utilisons la méthode addBatch() pour ajouter une série d'opérations de suppression au lot. En définissant une taille de lot appropriée (telle que 100), nous pouvons améliorer l'efficacité de la suppression.
Résumé
En utilisant le langage Java, nous pouvons facilement implémenter la fonction d'opération par lots des données de formulaire. Dans cet article, nous expliquons comment utiliser Java pour implémenter les fonctions d'insertion par lots, de mise à jour par lots et de suppression par lots de données, et joignons des exemples de code pertinents. J'espère que cet article vous sera utile pour utiliser la fonction d'opération par lots dans le développement réel.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!