public int addSendMsg(final Msg msg) {
this.getSqlMapClientTemplate().execute(new SqlMapClientCallback() {
public Object doInSqlMapClient(SqlMapExecutor executor)
throws SQLException {
executor.startBatch();
int batch = 0;
String[] tel_nbrs = msg.getTel_nbrs().split(",");
if(tel_nbrs.length <= 0)return 0;
for (int i = 0; i < tel_nbrs.length; i++) {
// 参数1为:ibatis中需要执行的语句的id
String content = msg.getContent();
msg.setTel_nbr(tel_nbrs[i]);
executor.insert("msg-info.sendMsg", msg);
}
executor.executeBatch(); //提交
return 1;
}
});
return 1;
}
分享到:
相关推荐
5. **事务管理**:Spring的PlatformTransactionManager接口用于管理事务,可以自动进行回滚和提交,确保数据一致性。在配置文件中,我们可以选择合适的事务管理器,如DataSourceTransactionManager或...
在Ibatis中,可以通过设置SqlSession的flushCache和useCache属性,以及使用批处理执行器ExecutorType.BATCH,来实现批量插入、更新或删除。例如,在插入1万条数据时,将这些操作放在同一个SqlSession中,而不是逐一...
### iBatis批量处理知识点详解 #### 一、iBatis基本实现 iBatis(现已更名为MyBatis)是一款优秀的持久层框架,它支持定制化SQL、存储过程及高级映射。iBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果...
1. 安装和配置:介绍如何将Ibatis集成到项目中,包括Maven或Gradle依赖、Spring整合等。 2. 映射文件和SQL语句:讲解如何编写XML映射文件,包括插入、更新、删除和查询等操作。 3. 动态SQL:Ibatis的动态SQL功能...
尽管Spring已经配置了事务管理,但在实际使用iBATIS批处理时,仍需要在代码中显式地开启和提交事务。这是因为iBATIS的批处理需要在一个事务内执行,才能确保所有操作作为一个整体执行。例如,下面的代码展示了如何在...
8. **Integration with Spring Framework**: iBATIS 2.3 可以与 Spring 框架无缝集成,通过 Spring 的事务管理器进行事务控制,并使用 Spring 的依赖注入来管理 iBATIS 的数据源和 SqlSessionFactory。 9. **Error ...
此方法实现了批量插入的功能,通过`SqlMapClientTemplate`进行操作,并且每500条数据执行一次批量提交,以减少网络传输次数,提高性能。 #### 五、性能优化 批量操作相比于单条数据操作有显著的性能优势。根据实际...
14. **与其他框架集成**:探讨如何将iBatis与Spring、Hibernate等其他框架集成,构建更强大的企业级应用。 这本指南对于初学者和有经验的开发者来说都是宝贵的资源,它帮助读者理解iBatis的工作原理,掌握其核心...
5. **事务管理**: iBatis提供了事务控制功能,开发者可以自定义事务的提交和回滚。 **iBatis开发指南** 开发指南会深入讲解如何初始化iBatis环境,包括设置配置文件、创建SqlMap文件、设计Mapper接口以及如何在...
2. 数据库事务管理:Ibatis提供了对数据库事务的管理,可以在业务逻辑层控制事务的提交和回滚,使得事务处理更加灵活。 3. 参数映射:Ibatis能够自动将Java对象的属性值映射到SQL语句的参数中,同样也能将查询结果...
iBatis支持手动和自动事务管理,开发者可以通过TransactionManager来控制事务的提交和回滚。同时,它也支持Spring的声明式事务管理。 7. **插件支持** iBatis提供插件机制,通过拦截器(Interceptor)可以在SQL...
11.3.2 为什么使用Spring代替iBATIS 211 11.4 创建自己的DAO层 211 11.4.1 从实现中分离出接口 212 11.4.2 创建一个工厂以解耦 212 11.5 小结 214 第12章 扩展iBATIS 215 12.1 理解可插拔组件的设计 215 12.2 使用...
5. **事务管理**:讲解如何在iBatis中进行事务控制,包括手动和自动提交、回滚以及事务隔离级别等。 6. **与Spring集成**:很多项目中,iBatis常与Spring框架一起使用,这部分会讲述如何配置Spring的DataSource和...
2. Executor:执行器,Ibatis的核心执行组件,根据不同的执行策略(如简单、缓存、批量)实现SQL的执行。 七、事务管理 Ibatis支持手动和自动两种事务管理方式。手动模式下,开发者需要自行开启和提交事务;自动...
在实际开发中,iBatis可以与Spring框架结合,通过Spring的依赖注入来管理和初始化SqlSessionFactory,实现更高级的事务管理。同时,iBatis还可以配合Mapper框架,进一步提高开发效率。 总结,iBatis作为一个优秀的...
根据提供的文件信息,我们可以从《iBATIS in Action》这本书中提炼出多个关于iBATIS框架的重要知识点。以下是对这些知识点的详细解析: ### 一、iBATIS哲学 **iBATIS哲学**强调了简单性和灵活性的重要性。该框架的...
4. **配置Spring整合**:在Spring配置文件中配置iBATIS的相关bean。 5. **测试**:编写JUnit测试,验证SQL的正确性和结果映射。 ## 六、iBATIS进阶 1. **ResultHandler**:自定义结果处理,可以对结果集进行更...
在Java世界里,iBatis能够很好地与Spring框架集成,通过Spring的依赖注入(DI)和AOP特性,可以实现更高级别的控制,如事务的声明式管理。同时,iBatis还支持MyBatis Generator,这是一个代码生成工具,能够自动生成...
7. **实际开发应用**:这部分可能包括了iBATIS在实际项目中的最佳实践,如如何处理批量操作,如何优化性能,以及如何与其他框架(如Spring)集成等。 8. **案例分析**:可能会有实际的代码示例和案例研究,帮助读者...
自动模式下,可通过Spring等框架集成,实现事务的自动提交和回滚。 ### 8. 性能优化 - 使用`<cache>`标签缓存查询结果,减少不必要的数据库访问。 - 批量操作,如`<insert>`标签的`useGeneratedKeys`和`...