JDBC批量處理示例
如何使用JDBC進行批處理。
BatchExample.java:
package com.examples;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Arrays;
public class BatchExample
{
public static void main(String[] args)
{
try (Connection connection = DBConnection.getConnection())
{
connection.setAutoCommit(false);
try (PreparedStatement pstmt = connection.prepareStatement("Insert into txn_tbl (txn_id,txn_amount, card_number, terminal_id) values (null,?,?,?)");)
{
pstmt.setString(1, "123.45");
pstmt.setLong(2, 2345678912365L);
pstmt.setLong(3, 1234567L);
pstmt.addBatch();
pstmt.setString(1, "456.00");
pstmt.setLong(2, 567512198454L);
pstmt.setLong(3, 1245455L);
pstmt.addBatch();
pstmt.setString(1, "7859.02");
pstmt.setLong(2, 659856423145L);
pstmt.setLong(3, 5464845L);
pstmt.addBatch();
int[] arr = pstmt.executeBatch();
System.out.println(Arrays.toString(arr));
connection.commit();
}
catch (SQLException e)
{
e.printStackTrace();
connection.rollback();
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
DBConnection.java: package com.examples;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DBConnection
{
public static Connection getConnection() throws SQLException, ClassNotFoundException
{
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/jcg?rewriteBatchedStatements=true", "root", "toor");
return connection;
}
}
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!