iBATIS批量操作

简介:

  

其中statementName为sql文件ID,list为参数集合

   

//  批量删除

public void batchDelete(final String statementName, final List list) throws Exception{
       if (list != null) {
               this.getSqlMapClientTemplate().execute(new SqlMapClientCallback() {
                   public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
                      executor.startBatch();
                      for (int i = 0, n = list.size(); i < n; i++) {
                          executor.delete(statementName, list.get(i));
                      }
                      executor.executeBatch();
                      return null;
                   }
               });
        }

}

 

//  批量修改

public void batchUpdate(final String statementName, final List list) throws Exception{
       if (list != null) {
               this.getSqlMapClientTemplate().execute(new SqlMapClientCallback() {
                   public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
                      executor.startBatch();
                      for (int i = 0, n = list.size(); i < n; i++) {
                          executor.update(statementName, list.get(i));
                      }
                      executor.executeBatch();
                      return null;
                   }
               });
        }

 }

 

//  批量添加

public void batchInsert(final String statementName, final List list) throws Exception{
       if (list != null) {
               this.getSqlMapClientTemplate().execute(new SqlMapClientCallback() {
                   public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
                      executor.startBatch();
                      for (int i = 0, n = list.size(); i < n; i++) {
                          executor.insert(statementName, list.get(i));
                      }
                      executor.executeBatch();
                      return null;
                   }
               });
       }
 }

 

原帖地址:http://blog.csdn.net/xinghui_liu/article/details/7230400

 

 

目录
相关文章
|
7月前
|
SQL Java
SpringData JPA多表关联操作
SpringData JPA多表关联操作
69 0
|
9月前
|
SQL Java 数据库连接
MyBatis 如何执行批量操作?
MyBatis 如何执行批量操作?
48 0
|
5月前
|
SQL XML Java
Mybatis插入大量数据效率对比:foreach、SqlSession批量、sql
使用mybatis插入数据执行效率对比,对比三种方式(测试数据库为MySQL), 使用 SqlSessionFactory,每一批数据执行一次提交 使用mybatis-plus框架的insert方法,for循环,每次执行一次插入 使用ibatis,纯sql插入
|
SQL Java 数据库连接
Apache-DBUtils实现CRUD操作
Apache-DBUtils实现CRUD操作
Apache-DBUtils实现CRUD操作
|
SQL Java 数据库连接
Mybatis批量更新,批量删除
Mybatis批量更新,批量删除
1614 0
Mybatis批量更新,批量删除
|
Java 数据库连接 容器