`
woshixushigang
  • 浏览: 575948 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

spring mvc 批量操作

 
阅读更多

用SimpleJdbcTemplate实现批量新增和批量修改。

1)使用BeanPropertySqlParameterSource。

BeanPropertySqlParameterSource的父类实现了SqlParameterSource接口。

为了方便理解,我将实现过程,访问数据库放在一个类的一个方法中。

即使堆砌成山的代码,其思路有可能却是简单的。

按 Ctrl+C 复制代码

2)使用SqlParameterSourceUtils.createBatch(list.toArray())

按 Ctrl+C 复制代码

源代码:org.springframework.jdbc.core.namedparam.SqlParameterSourceUtils.createBatch方法

同样将数组转化成BeanPropertySqlParameterSource数组。

/*
	 * (non-Javadoc)
	 * 
	 * @see
	 * com.bitbao.cm.dao.VerificationDao#addBatchVerificationItem(java.util.
	 * List)
	 */
	@Override
	public boolean addBatchVerificationItem(List<VerificationContentVO> itemList) {
		DefaultTransactionDefinition def = new DefaultTransactionDefinition();
		def.setName("addBatchVerificationItem");
		def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED);
		TransactionStatus txStatus = this.txManager.getTransaction(def);

		try {
			for (VerificationContentVO map : itemList) {
				this.namedJdbcTemplate.update(SQL_INSERT, mappingParameter(map));
			}
		} catch (Exception e) {
			txManager.rollback(txStatus);
			CMLog.error("Exception to save verification", e);
			return false;
		} finally {
			txManager.commit(txStatus);
		}

		return true;
	}



@SuppressWarnings("unchecked")
    public RowMapper mappingResult(Class<?> resultBean) {
        return new BeanPropertyRowMapper(resultBean);
    }




 

分享到:
评论

相关推荐

    Spring mvc整合redis实例(redis连接池)

    在Spring MVC的控制器中,可以注入`RedisTemplate`并调用其方法来执行增删改查操作。为了支持事务,可以使用`RedisTemplate`的`executePipelined`方法,它可以批量执行命令并确保原子性。 ```java @Autowired ...

    基于Spring Mvc的JavaWeb项目

    在本项目中,我们探讨的是一个基于...综上所述,这个基于Spring MVC的JavaWeb项目涵盖了Web开发的多个核心方面,包括后端逻辑处理、数据库操作、用户界面设计以及安全性和性能考虑,是学习和实践JavaWeb开发的好例子。

    基于Spring Mvc的Java Web项目

    这些功能涉及到后端的批量操作和事务管理。在Java Web项目中,用户选择要删除的记录后,前端发送请求,后端处理这些请求,确保数据的一致性和安全性。 通过以上描述,我们可以看出这个项目是一个典型的Java Web...

    spring3.2.5 MVC Poi3.9操作excel批量导入

    总之,"spring3.2.5 MVC Poi3.9操作excel批量导入"是一个涵盖了Web开发、数据处理和文件操作的综合技术主题。结合Spring MVC的灵活性、Apache POI的强大文件处理能力以及Maven的项目管理,开发者可以构建出强大且...

    spring mvc框架中接收前端传递的批量数据的两种超实用例子

    在Spring MVC框架中,处理前端批量传递的数据是常见的需求,特别是在大数据操作或者批量更新、删除等场景下。本文将详细讲解两种实用的方法来接收并处理这些数据。 **方法一:数组或集合参数** 1. **JSON数组传递*...

    Spring mvc mybatis plus 实现AOP 切面日志系统

    本项目“Spring MVC Mybatis Plus 实现AOP 切面日志系统”旨在提供一个基础的日志记录框架,能够自动追踪和记录应用程序的关键操作,同时支持数据持久化到数据库中,方便后期分析和问题排查。下面将详细介绍这些技术...

    spring3.0 MVC Poi操作excel批量导入数据库和导出数据

    在本主题中,我们将讨论如何利用Spring 3.0 MVC和Apache POI库来处理Excel文件,实现批量导入数据库和导出数据的功能。 Apache POI是一个强大的开源库,专门用于读写Microsoft Office格式的文件,特别是Excel(....

    Json-RPC & Spring MVC 集成

    Spring MVC是Spring框架的一部分,它是一个模型-视图-控制器(MVC)架构,用于构建可维护性和可测试性的Web应用程序。Spring MVC提供了强大的依赖注入、数据绑定、异常处理等功能,让开发者能够更专注于业务逻辑,而...

    基于Spring MVC的项目管理系统.zip

    基于Spring MVC的项目管理系统 项目概述 该项目是一个基于Spring MVC框架开发的项目管理系统,专注于客户、员工和项目的管理。系统提供了丰富的功能,包括客户信息的保存、查询、更新和删除,员工信息的获取,...

    J2EE spring mvc mybatis bootstrap HTML5 后台框架 控制台 mysql版本_spring3.0

    地图工具:经纬度操作 14.即时通讯:打开即时聊天窗口 技术点 1. 导出 导入 excel 文件 2 导出word文件 3. IO 流上传下载文件 4. 群发邮件,可以发html、纯文本格式,可以发给任意邮箱(实现批量发送广告邮件) 5. ...

    基于spring mvc,mybatis,freemarker 架构实战大型门户网站源码

    在大型门户网站的环境中,MyBatis能有效地管理数据库事务,支持批量操作和缓存机制,从而提高性能。 再者,FreeMarker是一个开源的模板引擎,用于生成动态Web内容。在Spring MVC框架中,FreeMarker常被用作视图解析...

    权限角色系统,基于(spring mvc、 spring、 mybatis)框架开发

    本系统采用Spring MVC、Spring和MyBatis三大主流框架进行开发,提供了高效、灵活的权限控制能力。以下是关于这三大框架以及权限角色系统设计的一些关键知识点: 1. **Spring MVC**: - Spring MVC是Spring框架的一...

    struts2 hibernate spring 整合批量删除源码

    在批量删除操作中,Struts2会接收用户的批量删除请求,通过Action类来处理这些请求,并将结果转发到相应的视图页面。Action类通常会注入Spring管理的业务服务层,以便调用删除方法。 其次,Hibernate是一个对象关系...

    spring图片批量上传

    看见大多帖子都描述了关于Spring MVC模式下的文件批量上传代码,我在此整理后,分享给大家

    整合 spring mvc、 spring、 hibernate、 bootstrap 开发网上书城管理系统

    7. **性能优化**:通过缓存技术(如Spring Cache)、数据库连接池(如HikariCP)和批量操作等方式提升系统性能。 8. **测试**:项目开发过程中,单元测试和集成测试是必不可少的,JUnit和Mockito等工具可以帮助我们...

    Java代码生成工具(傻瓜式操作无需教程的代码生成工具) v2.0.zip

    生成保存,删除,修改,批量保存,批量修改,批量删除,按条件查询,分页查询等功能。  生成各大主流框架配置文件及jsp页面。  一键生成整个项目,加入jar包部署到服务器即可运行。    傻瓜式操作,无需教程...

    Spring的MVC Web应用中的持久层技术

    4. **批处理**:支持批量执行SQL语句,提高数据库操作效率。 5. **事务管理**:可以与Spring的TransactionManager配合,实现声明式事务管理。 6. **结果集处理**:提供了多种方式(如List、Map等)来处理查询结果...

    Spring3.0MVC注解+SringJdbcDaoSupport案例

    在实际项目中,批量操作是常见的需求。Spring MVC的注解配合`SpringJdbcDaoSupport`可以高效处理批量更新和插入。例如,你可以创建一个`BatchUpdateController`,其中的方法使用`@PostMapping`注解,接收JSON数组...

    最新JAVA通用后台管理系统(ExtJS 4.2+Hibernate 4.1.7+Spring MVC 3.2.8)Eclipse版本

    Spring MVC 3.2.8支持的最高Hibernate版本是4.1.7,更高的Hibernate版本和Spring MVC 3.2.8组合会遇到兼容问题。 4、Hibernate集成二级缓存框架Ehcache。 5、数据库是MySQL、Oracle和SQL Server,Hibernate的Dialect...

Global site tag (gtag.js) - Google Analytics