收藏 分享(赏)

Spring事务原理.txt

上传人:凯文文 文档编号:46605 上传时间:2018-07-31 格式:TXT 页数:2 大小:2.30KB
下载 相关 举报
Spring事务原理.txt_第1页
第1页 / 共2页
Spring事务原理.txt_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、统观spring事务,围绕着两个核心PlatformTransactionManager和TransactionStatus spring提供了几个关于事务处理的类: TransactionDefinition /事务属性定义TranscationStatus /代表了当前的事务,可以提交,回滚。PlatformTransactionManager这个是spring提供的用于管理事务的基础接口,其下有一个实现的抽象类AbstractPlatformTransactionManager,我们使用的事务管理类例如DataSourceTransactionManager等都是这个类的子类。一般事务定

2、义步骤:TransactionDefinition td = new TransactionDefinition();TransactionStatus ts = transactionManager.getTransaction(td);try /do sthtransactionMmit(ts);catch(Exception e)transactionManager.rollback(ts);spring提供的事务管理可以分为两类:编程式的和声明式的。编程式的,比较灵活,但是代码量大,存在重复的代码比较多;声明式的比编程式的更灵活。编程式主要使用transactionTemplate。省

3、略了部分的提交,回滚,一系列的事务对象定义,需注入事务管理对象. void add()transactionTemplate.execute( new TransactionCallback()pulic Object doInTransaction(TransactionStatus ts) /do sth声明式:使用TransactionProxyFactoryBean:PROPAGATION_REQUIREDPROPAGATION_REQUIREDPROPAGATION_REQUIRED,readOnly围绕Poxy的动态代理 能够自动的提交和回滚事务org.springframewor

4、k.transaction.interceptor.TransactionProxyFactoryBeanPROPAGATION_REQUIRED-支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。 PROPAGATION_SUPPORTS-支持当前事务,如果当前没有事务,就以非事务方式执行。 PROPAGATION_MANDATORY-支持当前事务,如果当前没有事务,就抛出异常。 PROPAGATION_REQUIRES_NEW-新建事务,如果当前存在事务,把当前事务挂起。 PROPAGATION_NOT_SUPPORTED-以非事务方式执行操 ,如果当前存在事务,就把当前事务挂起。 PROPAGATION_NEVER-以非事务方式执行,如果当前存在事务, 抛出异常。 PROPAGATION_NESTED-如果当前存在事务, 在 事务 执行。如果当前没有事务, 行 PROPAGATION_REQUIRED类 的操 。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 网络技术 > 热门技术

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:文库网官方知乎号:文库网

经营许可证编号: 粤ICP备2021046453号世界地图

文库网官网©版权所有2025营业执照举报