ibatis批量插入数据

 1 public void batchInsertAlbum(final List list) {
 2         this.execute(new SqlMapClientCallback() {
 3             public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
 4                 executor.startBatch();
 5                 for (int i = 0; i < list.size(); i++) {
 6                     executor.insert("album.insert", list.get(i));
 7                 }
 8                 executor.executeBatch();
 9                 return null;
10             }
11         });
12     }
 1 public void batchInsertImg(final List<Image> imgList) {
 2         this.execute(new SqlMapClientCallback() {
 3             public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
 4                 executor.startBatch();
 5                 final int batchSize = 200; //每200条提交一次
 6                 int count = 0;
 7                 for (Image image : imgList) {
 8                     executor.insert("image.insert", image);
 9                     if (++count % batchSize == 0) {
10                         executor.executeBatch();
11                     }
12                 }
13                 executor.executeBatch(); //提交剩余的
14                 return null;
15             }
16         });
17     }

 

posted @ 2013-12-05 14:27  天宝  阅读(468)  评论(0编辑  收藏  举报