事务457——spring事务注解Transactional的propagation传播属性使用

来源:互联网 发布:thinkphp5 cms 编辑:程序博客网 时间:2024/05/18 00:23
怎么使用propagation传播属性方法一,TransactionDefinition 接口定义
    int PROPAGATION_REQUIRED = 0;          int PROPAGATION_SUPPORTS = 1;       int PROPAGATION_MANDATORY = 2;       int PROPAGATION_REQUIRES_NEW = 3;         int PROPAGATION_NOT_SUPPORTED = 4;       int PROPAGATION_NEVER = 5;
    方法二:在services层注解(加载类上或是方法上都可以)
        @Transactional(propagation=Propagation.REQUIRED)     // 容器不为这个方法开启事务    @Transactional(propagation=Propagation.NOT_SUPPORTED)    // 不管是否存在事务,都创建一个新的事务,原来的挂起,新的执行完毕,继续执行老的事务    @Transactional(propagation=Propagation.REQUIRES_NEW)     // 必须在一个已有的事务中执行,否则抛出异常    @Transactional(propagation=Propagation.MANDATORY)    // 必须在一个没有的事务中执行,否则抛出异常(与Propagation.MANDATORY相反)    @Transactional(propagation=Propagation.NEVER)     // 如果其他bean调用这个方法,在其他bean中声明事务,那就用事务.如果其他bean没有声明事务,那就不用事务.    @Transactional(propagation=Propagation.SUPPORTS) 
    阅读全文
    0 0
    原创粉丝点击