文档章节

spring的JdbcTemplate事务使用

绿林小子
 绿林小子
发布于 2015/12/21 09:53
字数 141
阅读 59
收藏 0

     参考  http://my.oschina.net/lhplj/blog/341555    

public boolean transferMoney(Serializable fromId, Serializable toId,
			int tradeMoney) {
		// 标识
		boolean flag = false;
		//
		String sql[] = new String[2];
		sql[0] = "update BankAccount ba set ba.balance = ba.balance - "
				+ tradeMoney + " where ba.id='" + fromId + "'";
		sql[1] = "update BankAccount ba set ba.balance = ba.balance + "
				+ tradeMoney + " where ba.id='" + toId + "'";
		// 事务
		DefaultTransactionDefinition def = new DefaultTransactionDefinition();
		DataSourceTransactionManager transactionManager = new DataSourceTransactionManager(
				jt.getDataSource());
		TransactionStatus status = transactionManager.getTransaction(def);
		// 执行结果
		int result[] = new int[sql.length];
		// 批量执行
		result = this.jt.batchUpdate(sql);
		// 是否提交事务
		boolean commit = true;
		for (int j = 0; j < result.length; j++) {
			if (result[j] == 0) { // 错误执行
				commit = false;
				transactionManager.rollback(status);
				break;
			}
		}
		// 成功才提交事务
		if (commit) {
			transactionManager.commit(status);
			flag = true;
		}
		// 返回
		return flag;
	}




© 著作权归作者所有

绿林小子
粉丝 5
博文 131
码字总数 45566
作品 0
福州
私信 提问
Hibernate与JdbcTemplate共享事务管理

在Spring和Hibernate的配置文件中,我们可以对类中的方法进行事务控制,也就是说某个方法中含有多个数据库的写操作,我们可以通过创建一个Spring中的HibernateTransactionManager实例,把相应...

安克诚
2012/09/11
172
0
Flex+Spring中jdbcTemplate与hibernate共享事务管理

HibernateTemplate一般是为了加快开发效率,还有就是使用Hibernate的时候,更简洁,更便利,而统一的声明事务,又让本来就已经很简洁的Hibernate对事务的处理,大大简化 但任何事务都有两面性,在带...

ulyn
2012/12/23
1K
0
Spring,Hibernate,Mybatis,JDBC事务之间的的关系

由于项目中既用到了Hibernate,又用到了Mybatis,还用到了JdbcTemplate,比较纠结于他们的事务,抽了个时间好好研究了下,有理解不正确的地方,欢迎批评指正 大致的来说,事务可以分为以下2中: 1.J...

whaon
2012/11/23
3.9K
2
分布式事务系列(4.1)Atomikos的分布式案例

1 系列目录 - 分布式事务系列(开篇)提出疑问和研究过程- 分布式事务系列(1.1)Spring事务管理器PlatformTransactionManager源码分析- 分布式事务系列(1.2)Spring事务体系- 分布式事务系...

乒乓狂魔
2015/06/01
5.6K
4
Spring的JDBCTemplate用事务有意义吗

Spring的JDBCTemplate是每个语句处理完后自动提交并且自动关闭Connection,这种情况下用Spring的事务能有什么用吗,有点想不明白。 比如我一个Service可能执行到多条语句,这个事务因为使用J...

逝水fox
2012/11/05
1K
3

没有更多内容

加载失败,请刷新页面

加载更多

Blockstack-2 :Blockstack ID注册

本篇文章主要记录Blockstack ID注册的流程; 在介绍注册流程之前,先简单的介绍一下Blockstack ID; 相对于传统互联网来说,Blockstack ID更像是统一的账号系统;即一个账号即可登录和授权所...

Riverzhou
今天
19
0
面试官问:平时碰到系统CPU飙高和频繁GC,你会怎么排查?

处理过线上问题的同学基本上都会遇到系统突然运行缓慢,CPU 100%,以及Full GC次数过多的问题。当然,这些问题的最终导致的直观现象就是系统运行缓慢,并且有大量的报警。本文主要针对系统运...

Java高级架构师n
今天
32
0
面向对象编程

1、类和对象 类是对象的蓝图和模板,而对象是实例;即对象是具体的实例,类是一个抽象的模板 当我们把一大堆拥有共同特征的对象的静态特征(属性)和动态特征(行为)都抽取出来后,就可以定...

huijue
今天
30
0
redis异常解决 :idea启动本地redis出现 jedis.exceptions.JedisDataException: NOAUTH Authentication required

第一次安装在本地redis服务,试试跑项目,结果却出现nested exception is redis.clients.jedis.exceptions.JedisDataException: NOAUTH Authentication required错误,真是让人头疼 先检查一...

青慕
今天
42
0
Spring 之 IoC 源码分析 (基于注解方式)

一、 IoC 理论 IoC 全称为 Inversion of Control,翻译为 “控制反转”,它还有一个别名为 DI(Dependency Injection),即依赖注入。 二、IoC方式 Spring为IoC提供了2种方式,一种是基于xml...

星爵22
今天
37
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部