您的位置:首页 > 其它

JDBC--批量处理

2015-11-22 17:04 302 查看
1、当需要成批插入或者更新记录时,可以采用Java的批量更新机制,这一机制允许多条语句一次性提交给数据库批量处理,这样可以提高处理速度。

2、JDBC的批量处理语句包括两个方法:

--1)addBatch(String):添加需要批量处理的sql语句或参数;

--2)executeBatch();执行批量处理语句;

3、通常遇到以下两种情况时需要批量执行sql语句:

--1)多条sql语句的批量处理:

--2)一个sql语句的批量传参。

4、实例

public void testBatch(){
Connection conn = null;
PreparedStatement ps = null;
String sql = "INSERT INTO customers values(?, ?, ?)";
try{
conn = JDBCUtils.getConnection();
JDBCUtils.startTransaction(conn);

ps = conn.prepareStatement(sql);
Date date = new Date(new java.util.Date().getTime());
long start = System.currentTimeMillis();
for(int i = 0; i < 100000; i++){
ps.setInt(1, i + 1);
ps.setString(2, "name_" + i);
ps.setDate(3, date);

ps.addBatch();

if((i + 1) % 300 == 0){
ps.executeBatch();
ps.clearBatch();
}
}
ps.executeBatch();
ps.clearBatch();
long end = System.currentTimeMillis();
System.out.println("Time: " + (end - start));

JDBCUtils.commit(conn);

}catch(Exception e){
e.printStackTrace();
JDBCUtils.rollback(conn);
}finally{
JDBCUtils.release(conn, ps, null);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: