批处理对大量数据的insert或着udpate有着时间上的优越性
看代码
这个主要用的是回调
public void insertPropSluiceLogList(final List<PropSluiceLog> propSluiceLogList) {
getSqlMapClientTemplate().execute(new SqlMapClientCallback() {
public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
executor.startBatch();
for(PropSluiceLog propSluiceLog : propSluiceLogList){
executor.insert("T_PROP_SLUICE_LOG.insertPropSluiceLog", propSluiceLog);
}
executor.executeBatch();
return null;
}
});
}
这个主要是要用事物
public List<HotelInfo> findHotelInfoFogPaginatedList(HotelSearchVO hotelSearchVO,int fromPage,int toPage) {
List<HotelInfo> list = new ArrayList<HotelInfo>();
List<String> props = new ArrayList<String>();
props = hotelSearchVO.getProps();
SqlMapClient sqlMapClient = this.getSqlMapClient();
Map map = new HashMap();
map.put("hotelSearchVO", hotelSearchVO);
map.put("row_from", fromPage);
map.put("row_to", toPage);
map.put("tp_flag", "1");
try{
sqlMapClient.startTransaction();
sqlMapClient.startBatch();
for(int i = 0 ; i < props.size(); i ++){
String propId = props.get(i);
sqlMapClient.insert("Prop.insertTpPropid",propId);
}
sqlMapClient.executeBatch();
list = sqlMapClient.queryForList("Prop.findHotelInfoAll", map);
sqlMapClient.endTransaction();
}catch(Exception e){
logger.info("class name TPDAO--method findHotelInfoFogPaginatedList error!"+e);
}
return list;
}
分享到:
相关推荐
在Ibatis中,可以通过设置SqlSession的flushCache和useCache属性,以及使用批处理执行器ExecutorType.BATCH,来实现批量插入、更新或删除。例如,在插入1万条数据时,将这些操作放在同一个SqlSession中,而不是逐一...
Job是Spring Batch中的最高级别实体,代表了一个完整的批处理任务。一个Job可以包含多个Step,并且具有唯一标识(JobIdentifier)。 **3.1.1 JobInstance** JobInstance表示一个Job的实例,每个Job可能会被多次...
配置数据源是使用Spring DAO的基础。Spring支持多种数据源配置方式,包括从JNDI查找数据源和直接在XML配置文件中定义。以下是一个使用Apache Commons DBCP数据源的例子: ```xml ${jdbc.driverClassName}" /> ${...
此外,手册还会涉及Spring与其他技术的整合,如Spring Security用于安全控制,Spring Batch用于批处理,以及Spring Data用于简化数据访问层的开发。对于进阶开发者,手册可能会深入探讨Spring的高级特性,如自定义...
在IT行业中,Spring框架是Java开发中的一个核心组件,尤其在企业级应用中广泛使用。Spring3 JDBC(Java Database Connectivity)模块是Spring框架的一部分,它提供了对数据库操作的支持,简化了传统的JDBC编程。本篇...
标题中的“iBATIS&Spring合奏(一)--DAO”指的是在Java开发中,将iBATIS和Spring框架结合使用来实现数据访问层(DAO)的一种技术整合。iBATIS是一个优秀的持久层框架,它允许开发者将SQL语句直接写在配置文件中,提供...
1. **Spring框架中的DAO支持**:Spring提供了对DAO的出色支持,包括事务管理、数据源配置以及DAO接口的实现。通过Spring的`JdbcTemplate`或`HibernateTemplate`,开发者可以方便地进行数据库操作,同时避免了大量...
在Java开发中,Spring框架是不可或缺的一部分,尤其在数据访问层(DAO)的实现上,Spring提供了多种方式来简化数据库操作。本篇文章将详细讲解如何使用Spring的`SimpleJdbcTemplate`来实现DAO操作,这是一种简单易用...
综上所述,Spring1.zip这个压缩包文件包含了Spring框架的一些关键模块的示例和文档,对于学习和理解Spring框架的使用,特别是AOP、JDBC、DAO、事务管理和JdbcTemplate的使用,提供了非常有价值的资源。通过深入研究...
Spring的DAO支持可以简化异常处理和事务管理。 6. **事务管理**:Spring提供了声明式和编程式事务管理,使得事务处理更加方便。 7. **Spring Boot**:近年来,Spring Boot简化了Spring应用的初始设置,提供了自动...
Spring框架是Java开发中最常用的轻量级开源框架之一,它以其强大的依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)能力深受开发者喜爱。Spring4.X作为其一个版本,引入了...
5. **批处理**:支持使用Spring的Batch模式进行批处理操作,提高数据插入、更新的效率。 6. **与Spring Data集成**:虽然MyBatis-Spring主要是为MyBatis和Spring的集成设计的,但也可以与Spring Data JPA等其他数据...
《Spring之SimpleJdbcTemplate的深度解析与...本文涵盖了SimpleJdbcTemplate的基础知识和应用,希望对读者在Spring开发中使用数据库有所帮助。对于更深入的源码分析和高级特性,建议查阅相关文档或博客文章进行学习。
此外,Spring还提供了大量的模块,如Spring Security(安全)、Spring Batch(批处理)、Spring Boot(快速启动)等,覆盖了开发中的多个方面。 **Maven** Maven是一个项目管理和综合工具,主要用于构建、依赖管理...
8. **SpringMVC与MyBatis的交互**:在Spring MVC的Controller中,可以通过Service层调用DAO层的方法,进而执行MyBatis的SQL操作。Controller接收HTTP请求,调用Service处理业务,Service再通过DAO访问数据库,最后...
Mybatis-Spring是一个将流行的Mybatis持久层框架与Spring框架集成的库,它使得在Spring应用中使用Mybatis变得更加方便。这个1.2.2版本的中文文档为开发者提供了详细的指南,帮助理解如何有效地整合这两个强大的框架...
Spring框架是Java开发...学习这些资料,你将能够掌握如何在Spring环境中有效地集成和使用Hibernate进行对象关系映射,以及如何利用Spring的JDBC工具进行数据库操作。通过实践,你可以进一步提升你的Java后端开发能力。
最后,书中还将涉及Spring与其他技术的集成,如Spring Security用于安全控制,Spring Batch用于批处理,以及Spring Integration和Spring Cloud用于微服务架构。这些内容将帮助读者构建完整的、高可用的企业级系统。 ...
Spring框架是Java开发中广泛应用的一个开源框架,以其依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented Programming, AOP)的核心特性,极大地简化了企业级应用的开发工作。在“spring的增删改...