#30天专注成长计划# day18 Spring事务机制2-事务
2016-09-24 本文已影响0人
哎呦薇
Spring事务机制传播主要由TransactionDefinition完成,在TransactionDefinition接口中定义了七个事务传播行为:
(1)PROPAGATION_REQUIRED 如果存在一个事务,则支持当前事务。如果没有事务则开启一个新的事务。
(2)PROPAGATION_SUPPORTS 如果存在一个事务,支持当前事务。如果没有事务,则非事务的执行。但是对于事务同步的事务管理器,PROPAGATION_SUPPORTS与不使用事务有少许不同。
(3)PROPAGATION_MANDATORY 如果已经存在一个事务,支持当前事务。如果没有一个活动的事务,则抛出异常。
(5)PROPAGATION_NOT_SUPPORTED 总是非事务地执行,并挂起任何存在的事务。使用PROPAGATION_NOT_SUPPORTED,也需要使用JtaTransactionManager作为事务管理器。
(6)PROPAGATION_NEVER 总是非事务地执行,如果存在一个活动事务,则抛出异常。
(7)PROPAGATION_NESTED如果一个活动的事务存在,则运行在一个嵌套的事务中. 如果没有活动事务,则按TransactionDefinition.PROPAGATION_REQUIRED 属性执行。
#30天专注成长计划# day18 Spring事务机制2-事务传播