/**
1000条去数据库修改一次
* update.
* @param cloundSign cloundSign
* @throws DataAccessException DataAccessException
* 批量更新
* @throws SQLException
*/
public void updateCloundSignBatch(final List<CloundSign> clList) throws DataAccessException, SQLException {
if (logger.isDebugEnabled()) {
logger.debug("进入updateCloundSignBatch, 输入参数[" + clList + "]");
}
/*this.getSqlMapClient().startBatch();
for (CloundSign cloundSign : clList) {
this.getSqlMapClientTemplate().update(
"CloundSign_updateCloundSign", cloundSign);
}*/
getSqlMapClientTemplate().execute(new SqlMapClientCallback() {
public Object doInSqlMapClient(SqlMapExecutor executor)
throws SQLException {
executor.startBatch();
int batchCommit = 0;
for (CloundSign clound : clList) {
executor.update("CloundSign_updateCloundSign", clound);
batchCommit++;
if (batchCommit >= 1000) {
executor.executeBatch();
batchCommit = 0;
}
}
if (batchCommit != 0) {
executor.executeBatch();
}
return null;
}
});
this.getSqlMapClient().executeBatch();
if (logger.isDebugEnabled()) {
logger.debug("离开updateCloundSignBatch");
}
}
分享到:
相关推荐
为了解决这个问题,ibatis(现已更名为MyBatis)提供了一种支持批量更新的机制,能够显著提高数据处理的速度。 #### 批量Update背景与问题 在实际应用中,经常会遇到需要批量更新数据库中的数据的情况,例如:商品...
### iBatis批量处理知识点详解 #### 一、iBatis基本实现 iBatis(现已更名为MyBatis)是一款优秀的持久层框架,它支持定制化SQL、存储过程及高级映射。iBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果...
总结来说,Ibatis批量存储涉及到iterate和foreach标签的使用,以及批处理的策略,它们都是为了更高效地处理大量数据。同时,HashMap的使用则为传递复杂参数提供了便利。熟练掌握这些知识点,可以有效地优化数据库...
- **批量查询**: 用于处理大量数据的查询任务。例如,当需要从表中检索数千条记录时,可以使用`IN`子句或循环处理等方式实现。 - **分页处理**: 在处理大量数据时非常有用,尤其是对于Web应用中的数据展示。常用的...
通过以上步骤,我们就完成了Ibatis批量插入的DAO实例。在实际项目中,根据业务需求可能需要对SQL语句进行优化,如开启或关闭数据库的自动提交,或者调整批处理的大小以平衡性能和内存消耗。此外,Ibatis还支持使用`...
在Ibatis中,批量操作提供了更高效、更灵活的方式处理大量数据。理解并熟练应用这些技巧,能显著提升应用程序的性能和可维护性。在实际项目中,根据具体需求选择合适的批量操作策略,并合理优化,可以大大降低系统...
在本文中,我们将深入探讨iBatis框架中的“ibatis批量”功能,特别是如何利用iBatis进行批量数据处理,包括批量插入、更新和删除操作。我们将通过解析提供的文件片段来阐述这一知识点,重点放在如何使用`<iterate>`...
在这个例子中,`ids`参数是一个逗号分隔的字符串,如`"15,16"`,iBatis会自动处理这个字符串,将其转化为`IN (15, 16)`的SQL片段,从而实现批量删除。 ### 第二种方法:利用`iterate`标签的批量删除 第二种方法是...
在处理数组时,Ibatis提供了一种方式来批量处理数据,这在需要对一组数据进行相同操作时非常有用。在本场景中,我们将深入探讨如何在Ibatis中处理数组,以及与EasyUI Tree组件的结合。 首先,我们需要了解Ibatis中...
Ibatis提供了两种执行器:SimpleExecutor和BatchExecutor,分别对应单条SQL执行和批量SQL执行。 5. ParameterMap和ParameterHandler:它们负责参数的设置和处理,ParameterMap代表了SQL参数的映射关系,而...
iBATIS的核心功能在于其强大的SQL映射能力和动态SQL生成机制,这使得开发人员能够灵活地处理复杂的数据库交互需求。 ### 输入参数为单个值 在iBATIS中,当输入参数为单个值时,如示例中的`long`类型,可以使用`...
- 批量操作:如何利用iBATIS进行批量插入、更新或删除。 - 动态SQL的最佳实践:分享编写高效动态SQL的技巧和注意事项。 通过深入学习这些文档,开发者可以熟练掌握iBATIS.NET,实现高效、灵活的数据访问,同时...
13. **案例分析**:通过实际案例展示iBatis在不同场景下的应用,如CRUD操作、复杂查询、批量处理等。 14. **与其他框架集成**:探讨如何将iBatis与Spring、Hibernate等其他框架集成,构建更强大的企业级应用。 这...
此外,文档还特别强调了如何通过iBATIS来调用存储过程,这是数据库操作中的一个重要特性,尤其是在处理复杂逻辑或批量操作时。 **iBATIS-SqlMaps-2-Tutorial_cn.pdf** 作为教程,这份文档提供了逐步指导,帮助读者...
例如,动态SQL允许开发者根据不同的条件构建SQL语句,而批量操作则可以提高数据处理的效率。 ### 四、总结 iBatis作为一个成熟且灵活的ORM框架,为Java开发者提供了丰富的工具和选项,以满足各种数据库操作的需求...
10. **Batch Operations**: iBATIS 支持批量操作,如插入、更新和删除,可以提高数据处理效率。 从描述 "ibatis-2.3.ibatis-2.3.ibatis-2.3" 看,似乎是在强调这个版本,但并没有提供额外的信息。标签 "ibat" 显然...
此外,还会介绍如何处理结果集、执行批量操作、使用缓存机制等高级特性。 **iBatis SQL Maps** - **Select**: 用于查询数据,可以返回单个对象、列表或者Map。 - **Insert**: 插入数据,支持自动获取自增主键值。 ...
在iBatis中,`<iterate>`标签是一个非常实用的功能,它允许我们处理集合数据,如数组、List或Map等,进行循环遍历并生成动态SQL语句。下面我们将详细探讨`<iterate>`标签的用法及其示例。 `<iterate>`标签的主要...