zoukankan      html  css  js  c++  java
  • spring aop中的propagation的7种配置

    1.前言 

    在声明式的事务处理中,要配置一个切面,即一组方法,如

    	<tx:advice id="txAdvice" transaction-manager="txManager">
    		<tx:attributes>
    			<tx:method name="find*" read-only="true" propagation="NOT_SUPPORTED" />
    		</tx:attributes>
    	</tx:advice>
    其中就用到了propagation,表示打算对这些方法怎么使用事务,是用还是不用,其中propagation有七种配置,REQUIRED、SUPPORTS、MANDATORY、REQUIRES_NEW、NOT_SUPPORTED、NEVER、NESTED。默认是REQUIRED。

    2.七种配置

    下面是Spring中Propagation类的事务属性详解:

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

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

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

    REQUIRES_NEW:新建事务,如果当前存在事务,把当前事务挂起。

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

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

    NESTED:支持当前事务,如果当前事务存在,则执行一个嵌套事务,如果当前没有事务,就新建一个事务。

    3.注意

    这个配置将影响数据存储,必须根据情况选择。


    转载地址:http://nannan408.iteye.com/blog/1754882



  • 相关阅读:
    企业级云数据库最佳实践
    NLP带来的“科幻感”超乎你的想象
    大咖来了:共话人工智能技术新生态
    2020年以后...软件开发人员趋势为何?
    云计算从入门到入行-专业培训认证课程限时0元领取
    linux 安装java jdk
    hadoop 配置信息记录
    hadoop 部署在centos 7 上
    centos 7 安装jdk
    Hadoop 集群ssh免密登录设置
  • 原文地址:https://www.cnblogs.com/archermeng/p/8587548.html
Copyright © 2011-2022 走看看