java的事务处理,如果对数据库进行多次操作,每一次的执行或步骤都是一个事务.如果数据库操作在某一步没有执行或出现异常而导致事务失败,这样有的事务被执行有的就没有被执行,从而就有了事务的回滚,取消先前的操作..... 注:在Java中使用事务处理,首先要求数据库支持事务。如使用MySQL的事务功能,...
分类:
编程语言 时间:
2014-08-05 18:47:29
阅读次数:
340
前几天犯了个低级错误,在一个事务方法里老是查询不到某条记录,但是debug卡住时,用db工具查,又能查出值。
经过一番折腾,原来是我在同一个事务里 查询 了已删除但是未提交的数据,当然查询不到了!!!
情况是这样的:
Service层(spring事务管理配置在这一层,此方法配了PROPAGATION_REQUIRED)有个方法function m()写得很长,
其中有2步是
...
分类:
其他好文 时间:
2014-07-31 16:58:36
阅读次数:
406
@Transactional(rollbackFor = Exception.class)默认情况下,此注解只对RuntimeException 起作用,如果对所有的异常起作用,要对rollbackFor 属性设值对于逻辑层的多个业务,要手动抛出异常 抛出运行异常例:@Transactional p...
分类:
编程语言 时间:
2014-07-30 20:25:34
阅读次数:
248
先来看看这个spring的配置文件的配置: ?<!-- 事务管理器 --> ?<bean id="transactionManager" ? class="org.springframework.orm.hibernate3.HibernateTransactionManager"> ? <property name="sessionFacto...
分类:
编程语言 时间:
2014-07-26 03:39:18
阅读次数:
223
第 1 部分http://www.ibm.com/search/csass/search/?q=%E4%BA%8B%E5%8A%A1&sn=dw&lang=zh&cc=CN&en=utf&hpp=20&dws=cndw&lo=zh概述Spring 最成功,最吸引人的地方莫过于轻量级的声明式事务管理,...
分类:
编程语言 时间:
2014-07-11 23:48:51
阅读次数:
532
开始之前关于本教程本教程将深入讲解 Spring 简单而强大的事务管理功能,包括编程式事务和声明式事务。通过对本教程的学习,您将能够理解 Spring 事务管理的本质,并灵活运用之。先决条件本教程假定您已经掌握了 Java 基础知识,并对 Spring 有一定了解。您还需要具备基本的事务管理的知识,...
分类:
编程语言 时间:
2014-07-11 22:20:35
阅读次数:
189
最近写的一个消息推送的接口,供订单生成后调用,发现每次传过来的时候订单id是存在的,可是利用订单id去查订单信息做后续操作时发现查不到数据,最终发现是订单生成时候业务处理写在service层,加了Spring的事务处理的相关参数:@Transactional(value="txManager",is...
分类:
编程语言 时间:
2014-07-03 20:36:49
阅读次数:
198
有始有终、有往有还、进退自如乃Spring事务管理之道,也是万物生生不息、和谐共处之道。遵道而行,但到半途需努力;会心不远,欲登绝顶莫辞劳。...
分类:
编程语言 时间:
2014-06-18 12:28:29
阅读次数:
357
一般的,我们把事务配在service层,利用service的业务逻辑接口统一的管理。
为什么不用在dao层呢?
因为一个service有可能调用多个dao,而这多个dao有可能相互联系,有时候一个操作需要调用多次数据库,但是这多次调用要么全提交,要么全回滚。
因此,在dao层调用事务理论上说不是一个很明智的选择。应该有业务逻辑层service层负责事务,统一处理。
Spring...
分类:
编程语言 时间:
2014-06-08 15:23:10
阅读次数:
404
spring事务管理器设计思想(一)在最近做的一个项目里面,涉及到多数据源的操作,比较特殊的是,这多个数据库的表结构完全相同,由于我们使用的ibatis框架作为持久化层,为了防止每一个数据源都配置一套规则,所以重新实现了数据源,根据线程变量中指定的数据库连接名称来获取实际的数据源。一个简单的实现如下...
分类:
编程语言 时间:
2014-05-30 00:27:10
阅读次数:
311