`
zhuchengzzcc
  • 浏览: 442917 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

spring tx:advice(转)

阅读更多

默认的 <tx:advice/> 设置如下:

  • 事务传播设置是 REQUIRED

  • 隔离级别是 DEFAULT

  • 事务是 读/写

  • 事务超时默认是依赖于事务系统的,或者事务超时没有被支持。

  • 任何 RuntimeException 将触发事务回滚,但是任何 checked Exception 将不触发事务回滚

这些默认的设置当然也是可以被改变的。 <tx:advice/><tx:attributes/> 标签里的 <tx:method/> 各种属性设置总结如下:rollback-for/no-rollback-for:配置哪些异常可以导致/不导致回滚,在默认情况下,抛出RuntimeException或其子类将导致回滚,其它异常不会导致回滚 .

 

<tx:method/> 有关的设置

 

属性是否需要
默认值 描述
name

与事务属性关联的方法名。通配符(*)可以用来指定一批关联到相同的事务属性的方法。 如:'get*''handle*''on*Event' 等等。

propagation REQUIRED 事务传播行为
isolation DEFAULT 事务隔离级别
timeout -1 事务超时的时间(以秒为单位)
read-only false 事务是否只读?
rollback-for

将被触发进行回滚的 Exception(s) ;以逗号分开。 如:'com.foo.MyBusinessException,ServletException'

no-rollback-for

被触发进行回滚的 Exception(s) ;以逗号分开。 如:'com.foo.MyBusinessException

 

分享到:
评论

相关推荐

    开发Spring的过程中出现Eclipse不能识别标签

    开发Spring的过程中出现Eclipse不能识别&lt;tx:advice /&gt;标签,需要引用 spring-tx标签,spring-tx-4.0.xsd 可以解决标签不识别的问题

    Spring进阶:Spring的CRUD

    **Spring进阶:Spring的CRUD** ...&lt;tx:advice id="txAdvice" transaction-manager="transactionManager"&gt; &lt;tx:attributes&gt; &lt;tx:method name="*" propagation="REQUIRED"/&gt; &lt;/tx:attributes&gt; &lt;/tx:advice&gt; ...

    spring-tx-4.2.xsd.zip

    在Spring中,通过XML配置进行事务管理是一种常见方式,`spring-tx-4.2.xsd`定义了所有用于配置事务处理的元素和属性,如`&lt;tx:annotation-driven&gt;`、`&lt;tx:advice&gt;`、`&lt;tx:attributes&gt;`等,这些元素帮助开发者声明式地...

    实验 spring 声明事务

    接着,使用`&lt;tx:advice&gt;`和`&lt;tx:attributes&gt;`定义事务策略,例如,将所有以`insert*`、`update*`和`delete*`开头的方法设置为`REQUIRED`传播属性,意味着这些方法必须在事务中执行。最后,使用`&lt;aop:config&gt;`配置...

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

    在Spring中,事务管理通常通过`&lt;tx:annotation-driven&gt;`和`&lt;bean&gt;`标签来实现。`&lt;tx:annotation-driven&gt;`标签用于启用基于注解的事务管理,而`&lt;bean&gt;`标签则用于定义TransactionManager bean,例如...

    spring事务与配置

    &lt;tx:advice id="txAdvice" transaction-manager="transactionManager"&gt; &lt;tx:attributes&gt; &lt;tx:method name="*" propagation="REQUIRED" rollback-for="Exception"/&gt; &lt;/tx:attributes&gt; &lt;/tx:advice&gt; ``` 这里通过`...

    springaop学习方法

    - **XML配置驱动的事务管理**:在Spring的配置文件中,通过`&lt;tx:annotation-driven&gt;`或`&lt;tx:advice&gt;`元素指定事务管理器,并使用`&lt;tx:method&gt;`定义哪些方法需要事务管理。例如: ```xml &lt;tx:annotation-driven ...

    Spring_tx事务

    其中,Spring的事务管理(Spring_tx)是它的重要特性之一,它为开发者提供了在多个数据库操作之间保持数据一致性的重要手段。本篇文章将深入探讨Spring事务管理的基础知识、工作原理以及如何在实际项目中应用。 ...

    基于java的企业级应用开发:声明式事务管理.ppt

    这种方式是通过在Spring的配置文件中使用`&lt;tx:advice&gt;`元素来定义事务规则。`&lt;tx:advice&gt;`是事务增强处理的容器,其中可以包含多个`&lt;tx:attributes&gt;`元素,每个`&lt;tx:attributes&gt;`又可以包含一个或多个`&lt;tx:method&gt;`...

    Spring2.0 事务处理

    `tx:advice`定义了事务属性,如传播行为(`propagation`)、是否回滚(`rollback-for`)以及是否只读(`read-only`)。 `@Transactional`注解可以用于控制事务边界,例如: ```java @Service public class ...

    spring事务配置详解

    在Spring的配置文件中,使用`&lt;tx:advice&gt;`和`&lt;aop:config&gt;`元素来定义事务策略和切面。 ```xml &lt;tx:advice id="txAdvice" transaction-manager="transactionManager"&gt; &lt;tx:attributes&gt; &lt;tx:method name="*" ...

    spring事务与数据库操作

    这段代码配置了一个事务管理器,并定义了一个事务顾问(`tx:advice`),该顾问指定了不同方法名前缀对应的不同事务传播行为。例如,所有以`save`开头的方法都将使用`REQUIRED`传播行为,这意味着如果当前存在事务,...

    Spring使用XML配置声明式事务

    &lt;tx:advice id="transactionAdvice" transaction-manager="transactionManager"&gt; &lt;tx:attributes&gt; &lt;tx:method name="save*" propagation="REQUIRED" rollback-for="Exception"/&gt; &lt;tx:method name="update*" ...

    spring3.x的读书笔记-7-1

    在给定的文件片段中,提到了使用`&lt;tx:advice&gt;`和`&lt;tx:attributes&gt;`来配置事务增强。下面将详细解释这些概念: 1. **事务增强 (Transaction Advice)**: 这是Spring AOP(面向切面编程)的一部分,用于在方法执行前后...

    struts2.3+hibernate3.6+spring3.1整合的纯xml配置的小项目

    &lt;tx:advice id="defaultTxAdvice"&gt; &lt;tx:attributes&gt; &lt;tx:method name="get*" read-only="true" /&gt; &lt;tx:method name="*" /&gt; &lt;/tx:attributes&gt; &lt;/tx:advice&gt; &lt;tx:advice id="noTxAdvice"&gt; &lt;tx:...

    SpringTx_account.zip

    例如,在"9.SpringTx_account"的代码中,可能有一个转账服务类,其中的转账方法使用了@Transactional注解,表示该方法需要在一个数据库事务中执行。 编程式事务管理则是通过TransactionTemplate或...

    使用Spring的声明式事务----AOP方式

    1. XML配置:在`&lt;tx:advice&gt;`元素中定义事务行为,然后通过`&lt;aop:config&gt;`或`&lt;aop:aspect&gt;`将事务行为应用到特定的bean或方法上。例如: ```xml &lt;tx:advice id="transactionAdvice" transaction-manager=...

    spring中事物配置

    Spring提供了几种事务通知类型,如`@Transactional`注解、`tx:advice`元素等。在XML配置中,我们可以使用`&lt;tx:advice&gt;`元素来定义一个事务通知: ```xml &lt;tx:advice id="transactionAdvice" transaction-manager=...

    Spring添加声明式事务.docx

    2. **配置事务增强**:通过`tx:advice`标签,你可以定义事务的增强规则,即如何根据方法名来决定事务的传播行为。例如: ```xml &lt;tx:advice id="txAdvice" transaction-manager="txManager"&gt; &lt;tx:attributes&gt; ...

    spring整合hibernate实现事务处理

    要启用注解事务管理,需要在Spring配置文件中添加`&lt;tx:annotation-driven/&gt;`元素,并配置数据源和事务管理器,如`PlatformTransactionManager`。 2. **Spring整合Hibernate实现事务处理 - XML方式** 对于不熟悉...

Global site tag (gtag.js) - Google Analytics