JDBC批量操作示例

1.jdbcTemplate实现批量处理:

//在批量更新中,根据JDBC 2.0规范,返回值为-2表示操作成功

int[]  statusArray0 = jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter(){

     @Override

     public int getBatchSize() {

          return list0.size();

     }

     @Override

     public void setValues(PreparedStatement pstm, int i)

              throws SQLException {

          Map<String, Object> map =list0.get(i);

          pstm.setObject(1,map.get("a"));

          pstm.setObject(2,map.get("b"));

     }

});

2.原生JDBC批量操作:

conn =Conn.getConnection();

conn.setAutoCommit(false);

pstm =conn.prepareStatement(sql);

for(Map<String,Object> map :list0){

     pstm.setObject(1,map.get("a"));

     pstm.setObject(1,map.get("b"));

     pstm.addBatch();

}

int[] Status=pstm.executeBatch();

conn.commit();

今天用到就把它记录了下来,后续会把Mybatis的批量操作也纳入进来,有什么不对地方欢迎大家予以指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值