一、我的应用
/*批量更新*/
public boolean batchAllUpdateComm(final List<TCommission> commList,
final List<Double> ratioList,final String employeeId){
try{
this.getSqlMapClientTemplate().execute(new SqlMapClientCallback<Object>() {
public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
executor.startBatch();
for( TCommission comm : commList ){
comm.setFastPrice(DoubleConvert.getDoubleByFastPrice
((comm.getMoney()*(int)(ratioList.get(0)*1000))/1000d));
comm.setAlterDate(new Date());
comm.setEmployeeId(employeeId);
executor.update("TCommission.update", comm);
}
executor.executeBatch();
return null;
}
});
return true;
}
catch(Exception e){
return false;
}
}
二、转载原文
public boolean updateCheckRusultList(final List updateData) {
try{
getSqlMapClientTemplate().execute(new SqlMapClientCallback() {
public Object doInSqlMapClient(SqlMapExecutor executor)
throws SQLException {
executor.startBatch();
for (Iterator i2=updateData.iterator(); i2.hasNext();){
SourceCodeCheckResult result = (SourceCodeCheckResult)i2.next() ;
logger.info("Update the reason and comment:Id-"+result.getLogId());
executor.update("SouceCodeCheckRule.updateCheckLog",result);
}
executor.executeBatch();
return null;
}
});
return true;
}catch(Exception e){
return false;
}
分享到:
相关推荐
#### ibatis批量Update解决方案 ibatis提供了一套完善的批量更新机制,可以有效地解决上述问题。下面详细介绍如何利用ibatis实现高效的批量更新: 1. **准备工作**: - 首先确保你的ibatis版本支持批量更新功能。...
在本文中,我们将深入探讨iBatis框架中的“ibatis批量”功能,特别是如何利用iBatis进行批量数据处理,包括批量插入、更新和删除操作。我们将通过解析提供的文件片段来阐述这一知识点,重点放在如何使用`<iterate>`...
本文将深入探讨“ibatis批量存储”这一主题,基于给定的文件名,我们将依次解析Ibatis中的iterate标签、批处理、foreach标签以及如何在Ibatis中使用HashMap。 1. Iterate标签详解及应用: Ibatis的iterate标签主要...
本篇文章将深入探讨Ibatis如何实现批量增删改查,以及相关的最佳实践。 首先,批量插入(Insert Batch)在Ibatis中可以通过动态SQL来实现。在映射文件中,你可以定义一个包含多个`<insert>`标签的SQL语句,每个`...
- **改**: 使用`UPDATE`语句更新已存在的记录。 - **查**: 使用`SELECT`语句检索表中的数据。 例如,要添加一条新记录到名为`users`的表中,可以使用以下SQL命令: ```sql INSERT INTO users (username, password) ...
### iBatis批量操作 #### 一、简介 在企业级应用开发中,数据库操作是不可或缺的一部分。为了提高效率和减少资源消耗,批量处理成为了一种常用的技术手段。本文将介绍如何利用iBatis框架进行批量添加、修改、删除...
- **性能优化**:批量操作的数据量不宜过大,避免一次性加载过多数据导致内存压力,同时应合理调整数据库的批处理大小设置,以平衡性能和资源消耗。 - **事务隔离级别**:根据业务需求选择合适的事务隔离级别,以...
此外,还会介绍如何处理结果集、执行批量操作、使用缓存机制等高级特性。 **iBatis SQL Maps** - **Select**: 用于查询数据,可以返回单个对象、列表或者Map。 - **Insert**: 插入数据,支持自动获取自增主键值。 ...
你可以选择单个表,也可以批量导入多个表名。工具会根据这些表的结构,自动生成对应的Ibatis SQLMap XML文件,包括增删改查等基本操作。XML文件中的每个元素都将对应数据库表的字段,使你可以直接在代码中调用这些预...
- **Executor**: 执行器,负责调用数据库并处理结果,包括SimpleExecutor、ReuseExecutor和BatchExecutor,分别对应简单执行、重用执行和批量执行策略。 3. **SQL映射文件** SQL映射文件(*.xml)是iBatis的核心...
4. **Executor**:执行器是Ibatis执行SQL的底层实现,包括SimpleExecutor、ReuseExecutor和BatchExecutor,分别对应简单执行、重用执行和批量执行三种策略。Executor接口封装了对数据库的 CRUD 操作,提供了一种灵活...
以上示例展示了Ibatis在处理各种数据库操作时的强大功能,包括删除、插入、查询和批量更新等常见场景。Ibatis通过其动态SQL标签如`iterate`, `isNotNull`, `dynamic`等提供了极高的灵活性,能够有效应对复杂多变的...
在本实例中,"ibatis2.3.4.726增删改查源码实例" 提供了一个完整的基于Ibatis 2.3.4.726版本的开发案例,涵盖了数据库的基本操作,即增(INSERT)、删(DELETE)、改(UPDATE)和查(SELECT)。 首先,我们来了解...
2. Executor:执行器,Ibatis的核心执行组件,根据不同的执行策略(如简单、缓存、批量)实现SQL的执行。 七、事务管理 Ibatis支持手动和自动两种事务管理方式。手动模式下,开发者需要自行开启和提交事务;自动...
- **Statement类型**:可以是INSERT、UPDATE、DELETE或SELECT。 - **SQL语句**:具体执行的SQL语句。 - **自动生成的主键**:支持插入后自动生成主键值。 - **存储过程**:支持调用数据库存储过程。 - **...
11. **Batch Operations**:iBATIS提供了批处理功能,可以一次性提交多个插入、更新或删除操作,提升批量数据处理的效率。 12. **Error Handling**:当SQL执行出错时,iBATIS会抛出异常,提供错误信息帮助定位问题...
- **Statement 类型**:如 SELECT、INSERT、UPDATE 和 DELETE 等 SQL 语句类型。 - **SQL 语句**:具体的 SQL 查询或操作语句。 - **SQL 片段重用**:通过 `<sql>` 元素定义通用的 SQL 片段,提高代码复用性。 - **...
通过传入的`HashMap`对象,可以实现动态设置更新字段及其对应的值,从而实现批量更新的功能。 综上所述,ibatis框架通过XML配置文件中的SQL语句模板和参数化处理,极大地简化了数据库操作的过程,提高了代码的安全...