`
qq1988627
  • 浏览: 105975 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

ibatis批处理

 
阅读更多
public Integer saveTemp(final List<Temp>temp){ 
		int size=0; 
		getSqlMapClientTemplate().execute(new SqlMapClientCallback(){ 
		public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException { 
		   executor.startBatch(); 
		   int count=0;
		   for(Temp Temp:temp){
		    count++; 
		    if(temp.size()%100==0){ 
			    logger.debug("执行第["+count+"]个200条数据..."); 
			    executor.insert("Temp.saveTemp",Temp); 
		     } 
		    } 
		    int size=executor.executeBatch(); 
		    logger.debug("本次批量操作共执行了["+size+"]条数据...");
			return null; 
		    } 
		}); 
		return size; 
		}
	
	public void batchInsert(final List<Temp> temp) throws Exception{
	    this.getSqlMapClientTemplate().execute(new SqlMapClientCallback(){ 
	    public Object doInSqlMapClient(SqlMapExecutor executor) 
	            throws SQLException { 
	    executor.startBatch(); 
	    int batch = 0; 
	    for(Temp Temp:temp){ 
	    //调用获取sequence的方法。如果没有的话就去掉这行代码。 
	    //TreeCate.setTreeCateId(getNextId()); 
	    //参数1为:ibatis中需要执行的语句的id 
	    executor.insert("Temp.saveTemp", Temp); 
	    batch++; 
	    //每500条批量提交一次。 
	    if(batch==50000){ 
	    executor.executeBatch(); 
	    batch = 0; 
	    } 
	    } 
	    executor.executeBatch(); 
	    return null; 
	    } 
	    }); 
	} 
 
分享到:
评论

相关推荐

    ibatis批处理.doc

    尽管Spring已经配置了事务管理,但在实际使用iBATIS批处理时,仍需要在代码中显式地开启和提交事务。这是因为iBATIS的批处理需要在一个事务内执行,才能确保所有操作作为一个整体执行。例如,下面的代码展示了如何在...

    iBatis批处理

    程序员的素养 程序员在工作中经常会遇到各式各样的问题和挑战,要想成为一名优秀的程序员,不仅需要具备扎实的技术能力,还需要有良好的职业素养。本文将围绕程序员的四大核心素养展开讨论,分别是:定位、主动、...

    ibatis的两种方式实现批处理.doc

    iBatis批处理实现方式浅析 iBatis是一个功能强大的持久层框架,提供了多种方式来实现批处理操作。批处理是指将多个SQL语句组合成一个批处理单元,然后将其执行到数据库中,以提高数据库操作的效率。在iBatis中,...

    ibatis 完美例子 一对多 批处理 事务 和 spring struts2集成

    本文将深入探讨如何利用Ibatis实现一对多关系、批处理、事务管理和与Spring及Struts2的集成。 首先,让我们来看一下“一对多”关系。在数据库设计中,一对多关系很常见,比如一个用户可以有多个订单。在Ibatis中,...

    ibatis api,ibatis文档,ibatis说明文档

    Ibatis,全称为MyBatis,是一个优秀的Java持久层框架,它主要负责SQL映射,将数据库操作与业务逻辑解耦,使得开发者可以更专注于业务逻辑的实现,而无需关心繁琐的SQL语句编写。本篇文章将深入探讨Ibatis API、文档...

    ibatis教程,ibatis帮助文档

    1. SqlMapClient:它是iBATIS的主要接口,负责执行SQL映射和批处理操作。提供多种方法如queryForObject、queryForMap等,用于执行不同的查询或更新操作。 2. sqlmapconfig.xml:这是iBATIS的全局配置文件,包含了...

    ibatis应对批量update

    ### ibatis应对批量update 在处理大量数据更新时,传统的for循环方式往往会导致效率低下。这是因为每一次循环都需要执行一次数据库连接操作,对于批量更新来说,这样的处理方式显然不够高效。为了解决这个问题,...

    ibatis批量处理

    iBatis提供了批处理功能,可以在一次数据库连接中执行多个SQL语句,这极大地提高了处理大量数据时的性能。iBatis通过`SqlMapClient`接口提供了几个关键方法来实现批处理: 1. **`startBatch()`**:开始批处理。 2. ...

    ibatis批量存储

    本文将深入探讨“ibatis批量存储”这一主题,基于给定的文件名,我们将依次解析Ibatis中的iterate标签、批处理、foreach标签以及如何在Ibatis中使用HashMap。 1. Iterate标签详解及应用: Ibatis的iterate标签主要...

    IBatis .NET框架实例

    通过合理的缓存策略、批处理和预编译SQL等手段,IBatis可以在不影响灵活性的同时提供良好的性能。 总结,IBatis .NET为.NET开发者提供了一种直观、灵活的方式来处理数据库操作。通过学习这个实例,你可以掌握如何...

    ibatis系列 详细介绍

    8. **性能优化**:提供一些关于提高iBATIS性能的建议,如合理设计SQL、使用批处理等。 《ibatis.pdf》可能是iBATIS的官方文档或综合指南,可能包含更广泛的内容,如最佳实践、高级特性、与其他框架的集成等。 ...

    ibatis基础教学文档

    1. SqlMapClient:它是iBATIS的主要接口,负责执行SQL映射和批处理操作。提供了如queryForObject、queryForMap等方法来执行查询或更新操作。 2. sqlmapconfig.xml:这是全局配置文件,定义了数据源、事务管理器等...

    ibatis jar包.zip

    9. **性能优化**:通过预编译SQL语句、批处理等技术,iBATIS能够有效地提高数据库操作的性能。 总之,"ibatis jar包.zip" 提供了使用iBATIS框架进行数据库访问所需的全部组件,使得开发者能够快速地构建数据驱动的...

    ibatis-common.jar包

    它提供了两种基本的执行模式:SimpleExecutor(简单执行器)和BatchExecutor(批处理执行器),前者每次执行一条SQL,后者则将多条SQL语句合并成一个批处理,提高效率。 4. **ParameterMap**与**ParameterMapping**...

    ibatis-2.3.0.677

    4. **Executor**:执行器接口,负责SQL语句的真正执行,它根据不同的策略实现如简单执行、批处理执行、缓存等不同模式。 5. **ParameterHandler**:参数处理器,将Java对象的参数转换为SQL语句所需的参数值。 6. *...

    ibatis in action 电子书(pdf)

    8. **高级话题**:涵盖与iBATIS相关的高级主题,如批处理、延迟加载、自定义类型处理器、插件扩展等,提升开发者对iBATIS框架的深度理解。 9. **最佳实践**:提供实用的项目开发建议,如如何设计合理的映射文件结构...

    ibatis的3个jar包.rar

    此外,它还支持事务管理和批处理,能够很好地适应大型项目的需求。在使用Ibatis时,开发者可以根据项目的规模和需求选择不同的集成方式,如Spring框架中的Ibatis整合,实现更高级的事务管理和依赖注入。 总的来说,...

    iBATIS_DAO-2.2.0.638

    7. **批处理操作**:对于批量数据操作,iBATIS提供了批处理API,可以大大提高效率。 8. **异常处理**:iBATIS将数据库操作过程中可能出现的异常进行了封装,提供了一套统一的异常处理机制。 使用iBATIS DAO 2.2.0....

    详细介绍Ibatis的用法

    - **批处理**:对于大量数据的插入或更新操作,可以使用批处理来提高效率。 - **执行SQL语句**:通过`SqlMapClient`接口提供的方法执行SQL语句。 #### 示例代码 - **执行更新操作**:使用`update`方法执行INSERT...

Global site tag (gtag.js) - Google Analytics