您的位置:首页 > 编程语言 > Java开发

java三大框架之spring事务传播行为

2016-08-19 00:34 344 查看
<span style="font-family: Arial, Helvetica, sans-serif;"></span><pre code_snippet_id="1839267" snippet_file_name="blog_20160819_1_6865045" name="code" class="plain">



•事务的传播行为可以由传播属性指定.Spring 定义了 7 种类传播行为

当事务方法被另一个事务方法调用时,必须指定事务应该如何传播.例如:方法可能继续在现有事务中运行,也可能开启一个新事务,并在自己的事务中运行

PROPAGATION_REQUIRED--支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。

PROPAGATION_SUPPORTS--支持当前事务,如果当前没有事务,就以非事务方式执行。

PROPAGATION_MANDATORY--支持当前事务,如果当前没有事务,就抛出异常。

PROPAGATION_REQUIRES_NEW--新建事务,如果当前存在事务,把当前事务挂起。

PROPAGATION_NOT_SUPPORTED--以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。

PROPAGATION_NEVER--以非事务方式执行,如果当前存在事务,则抛出异常。

虽然有7种,但是常用的就第一种REQUIRED和第四种REQUIRES_NEW

•事务传播属性可以在@Transactional注解的propagation属性中定义
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息