`

spring事务注解Transactional的propagation传播属性说明

 
阅读更多

spring事务注解Transactional的propagation传播属性说明

// 如果有事务,那么加入事务,没有的话新建一个(不写的情况下)
@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)
分享到:
评论

相关推荐

    spring 事务基于注解模式

    注解的属性包括`propagation`(传播行为)、`isolation`(隔离级别)、`timeout`(超时时间)、`rollbackFor`(指定异常类型触发回滚)和`noRollbackFor`(指定异常类型不触发回滚)。 #### 2.2 事务传播行为 - ...

    spring 自定义事务管理器,编程式事务,声明式事务@Transactional使用

    `@Transactional`可以设置不同的属性,如`propagation`(传播行为)、`isolation`(隔离级别)、`rollbackFor`(触发回滚的异常类型)等。下面是一个声明式事务的例子: ```java @Service public class UserService...

    Spring事务传播属性

    Spring事务传播属性是这一机制的关键组成部分,它定义了在一个事务方法被另一个事务方法调用时,应该如何处理事务的边界。在深入理解Spring事务传播属性之前,我们首先需要了解Spring中的事务管理模型,包括编程式...

    spring 事务传播 demo

    首先,事务传播行为是指当一个被@Transactional注解的方法被另一个@Transactional方法调用时,如何处理当前事务的边界。Spring定义了7种不同的事务传播行为: 1. **PROPAGATION_REQUIRED**:这是默认的传播行为,...

    spring的@Transactional注解详细用法1

    `@Transactional`注解允许指定这些属性,如`propagation`(传播行为)、`isolation`(隔离级别)、`readOnly`(只读事务)等。 总的来说,Spring的`@Transactional`注解为开发者提供了方便且强大的声明式事务管理...

    spring 注解事务管理

    - 配置类中需要启用事务注解处理,例如在`@Configuration`类中添加`@EnableTransactionManagement`。 通过以上介绍,我们可以看到Spring的注解事务管理提供了强大且灵活的机制,使得开发者可以专注于业务逻辑,而...

    后端 Java Spring Data Jpa @Transactional 介绍

    此外,可以通过Spring的`@Transactional`注解的属性(如`propagation`、`isolation`等)来定制事务的行为,以适应不同的业务场景。 总结来说,`@Transactional`是Spring提供的一种强大的工具,它简化了事务管理,...

    spring注解事务实现demo

    注解中可以包含多个属性,如`value`(指定事务管理器)、`propagation`(事务传播行为)、`isolation`(事务隔离级别)、`readOnly`(是否只读事务)等,以定制事务的行为。 3. **事务传播行为** 事务传播行为定义...

    Spring3事务管理——使用@Transactional 注解.rar

    Spring3引入了基于注解的事务管理,极大地简化了事务配置,使得开发者可以在方法级别声明事务边界,这就是`@Transactional`注解的用处。本文将深入探讨这个注解以及如何在Spring3中有效地使用它。 `@Transactional`...

    Spring事务传播Demo.zip

    本篇将基于"Spring事务传播Demo"来深入探讨Spring事务管理和传播行为。 首先,我们需要理解什么是事务。在数据库操作中,事务是一组操作,这些操作要么全部执行,要么全部不执行,以确保数据的一致性和完整性。在...

    这一次搞懂Spring事务是如何传播的

    在Spring中,`@Transactional`注解用于标记事务方法,并通过其`propagation`属性来指定事务的传播行为。例如: ```java @Transactional(propagation = Propagation.REQUIRED) public void serviceMethod() { // .....

    spring事务,xml方式和注解方式

    这个注解包含了一些可选属性,如`propagation`(事务传播行为)、`isolation`(隔离级别)、`timeout`(超时时间)和`rollbackFor`(触发回滚的异常类型)。一个简单的例子如下: ```java @Service public class ...

    spring事务Propagation及其实现原理详解

    在使用Spring的事务Propagation机制时,需要在服务类或服务方法上添加@Transactional注解,指定事务的传播属性。这样,在调用服务方法时,Spring将根据事务传播属性来决定事务的执行和传播方式。 例如,使用...

    spring事务案例分析.zip

    5. **事务传播行为**:Spring定义了七种事务传播行为,如PROPAGATION_REQUIRED(默认行为,新建事务或加入当前事务)、PROPAGATION_SUPPORTS(如果存在事务,则加入,否则无需事务)、PROPAGATION_MANDATORY(必须在...

    SpringJDBC注解事务.zip

    `propagation`定义事务传播行为,如REQUIRED、REQUIRES_NEW等;`isolation`设置事务隔离级别;`rollbackFor`指定哪些异常应导致回滚;`noRollbackFor`指明哪些异常不应导致回滚。 - **使用示例**:在Service层的...

    Spring声明式事务@Transactional知识点分享

    通过 @Transactional 注解,可以指定事务的传播行为、隔离级别、读写控制等属性。 首先,@Transactional 注解支持 9 个属性的设置,常用的三个属性是 readOnly、propagation 和 isolation。其中,readOnly 用于读写...

    spring 事务传播与隔离级别DEMO

    本DEMO主要探讨的是Spring事务的传播行为和隔离级别,这些概念对于理解和优化数据库操作至关重要。让我们深入理解这些概念及其实际应用。 首先,我们来谈谈事务的传播行为。在Spring中,当一个方法被另一个具有事务...

    行业-52 MySQL是如何支持4种事务隔离级别的?Spring事务注解是如何设置的?l.rar

    Spring事务注解的使用使得开发者可以轻松地在应用程序代码中控制事务边界,而无需手动管理数据库连接和事务。通过结合MySQL的事务隔离级别设置和Spring的事务管理,可以有效地确保数据一致性并优化并发性能。

    spring注解式事务

    * propagation:事务传播属性 * isolation:事务隔离级别 * readOnly:是否只读事务 * rollbackFor:抛出特定异常时回滚事务 * noRollbackFor:抛出特定异常时不回滚事务 * rollbackForClassName:抛出特定异常类名...

    Spring事务管理的jar包

    除了基本的事务控制,Spring还提供了丰富的事务属性,如传播行为(PROPAGATION_REQUIRED、PROPAGATION_SUPPORTS等)、隔离级别(ISOLATION_DEFAULT、ISOLATION_READ_UNCOMMITTED等)和事务超时设置,允许开发者根据...

Global site tag (gtag.js) - Google Analytics