欢迎来到天天文库
浏览记录
ID:37712885
大小:44.50 KB
页数:5页
时间:2019-05-29
《spring传播事务和隔离级别》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Spring事务的传播行为和隔离级别7个传播行为,4个隔离级别,Spring事务的传播行为和隔离级别[transactionbehaviorandisolatedlevel]2007-08-0116:33事务的传播行为和隔离级别[transactionbehaviorandisolatedlevel]Spring中事务的定义:一、Propagation: key属性确定代理应该给哪个方法增加事务行为。这样的属性最重要的部份是传播行为。有以下选项可供使用:PROPAGATION_REQUIRED--支持当前事务,如果
2、当前没有事务,就新建一个事务。这是最常见的选择。PROPAGATION_SUPPORTS--支持当前事务,如果当前没有事务,就以非事务方式执行。PROPAGATION_MANDATORY--支持当前事务,如果当前没有事务,就抛出异常。PROPAGATION_REQUIRES_NEW--新建事务,如果当前存在事务,把当前事务挂起。PROPAGATION_NOT_SUPPORTED--以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。PROPAGATION_NEVER--以非事务方式执行,如果当前存在事务,则抛出
3、异常。很多人看到事务的传播行为属性都不甚了解,我昨晚看了j2eewithoutejb的时候,看到这里也不了解,甚至重新翻起数据库系统的教材书,但是也没有找到对这个的分析。今天搜索,找到一篇极好的分析文章,虽然这篇文章是重点分析PROPAGATION_REQUIRED和PROPAGATION_REQUIRED_NESTED的解惑spring嵌套事务/***@author王政*@date2006-11-24*@note转载自http://www.javaeye.com/topic/35907?page=1*/******
4、**TransactionDefinition接口定义*******************/** *Supportacurrenttransaction,createanewoneifnoneexists. *AnalogoustoEJBtransactionattributeofthesamename. *
Thisistypicallythedefaultsettingofatransactiondefinition. */ intPROPAGATI
5、ON_REQUIRED=0; /** *Supportacurrenttransaction,executenon-transactionallyifnoneexists. *AnalogoustoEJBtransactionattributeofthesamename. *
Note:Fortransactionmanagerswithtransactionsynchronization, *PROPAGATION_SUPPORTSisslightly
6、differentfromnotransactionatall, *asitdefinesatransactionscoppthatsynchronizationwillapplyfor. *Asaconsequence,thesameresources(JDBCConnection,HibernateSession,etc) *willbesharedfortheentirespecifiedscope.Notethatthisdependson *theactual
7、synchronizationconfigurationofthetransactionmanager. *@seeorg.springframework.transaction.support.AbstractPlatformTransactionManager#setTransactionSynchronization */ intPROPAGATION_SUPPORTS=1; /** *Supportacurrenttransaction,throwan
8、exceptionifnoneexists. *AnalogoustoEJBtransactionattributeofthesamename. */ intPROPAGATION_MANDATORY=2; /** *Createanewtransaction,suspendthecur
此文档下载收益归作者所有