通过 <tx:advice/> 标签来指定不同的事务性设置。默认的 <tx:advice/> 设置如下:
事务传播设置是 REQUIRED
隔离级别是 DEFAULT
事务是 读/写
事务超时默认是依赖于事务系统的,或者事务超时没有被支持。
任何 RuntimeException 将触发事务回滚,但是任何 checked Exception 将不触发事务回滚
这些默认的设置当然也是可以被改变的。 <tx:advice/> 和 <tx:attributes/> 标签里的 <tx:method/> 各种属性设置总结如下:
表 9.1. <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不能识别<tx:advice />标签,需要引用 spring-tx标签,spring-tx-4.0.xsd 可以解决标签不识别的问题
`<tx:advice>`是事务增强处理的容器,其中可以包含多个`<tx:attributes>`元素,每个`<tx:attributes>`又可以包含一个或多个`<tx:method>`子元素。`<tx:method>`用于指定事务的传播行为、隔离级别、超时时间、只读...
在 XML 配置文件中,我们可以使用 `<tx:advice>` 元素来定义事务通知,用于指定事务属性。例如: ```xml <tx:advice id="txAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name=...
赠送jar包:spring-tx-5.0.10.RELEASE.jar; 赠送原API文档:spring-tx-5.0.10.RELEASE-javadoc.jar; 赠送源代码:spring-tx-5.0.10.RELEASE-sources.jar; 赠送Maven依赖信息文件:spring-tx-5.0.10.RELEASE.pom;...
<tx:advice id="txAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="*" propagation="REQUIRED" rollback-for="Exception"/> </tx:attributes> </tx:advice> ``` 这里通过`...
通过`<tx:advice>`和`<aop:config>`标签,可以定义事务切面并应用到特定的bean或方法上。 ```xml <tx:advice id="txAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="create...
在给定的文件片段中,提到了使用`<tx:advice>`和`<tx:attributes>`来配置事务增强。下面将详细解释这些概念: 1. **事务增强 (Transaction Advice)**: 这是Spring AOP(面向切面编程)的一部分,用于在方法执行前后...
在Spring的配置文件中,使用`<tx:advice>`和`<aop:config>`元素来定义事务策略和切面。 ```xml <tx:advice id="txAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="*" ...
<tx:advice id="defaultTxAdvice"> <tx:attributes> <tx:method name="get*" read-only="true" /> <tx:method name="*" /> </tx:attributes> </tx:advice> <tx:advice id="noTxAdvice"> <tx:...
<tx:advice id="advice"> <tx:attributes> <tx:method name="save*" propagation="REQUIRED"/> <tx:method name="update*" propagation="REQUIRED"/> <tx:method name="delete*" propagation="REQUIRED"/> <tx...
- **XML配置驱动的事务管理**:在Spring的配置文件中,通过`<tx:annotation-driven>`或`<tx:advice>`元素指定事务管理器,并使用`<tx:method>`定义哪些方法需要事务管理。例如: ```xml <tx:annotation-driven ...
在 Spring 框架中,事务管理器是通过 `<tx:annotation-driven>` 元素来配置的。在多数据源配置中,我们可以定义多个事务管理器,每个事务管理器对应一个数据源。例如,我们可以定义两个事务管理器 `...
在Spring中,通过XML配置进行事务管理是一种常见方式,`spring-tx-4.2.xsd`定义了所有用于配置事务处理的元素和属性,如`<tx:annotation-driven>`、`<tx:advice>`、`<tx:attributes>`等,这些元素帮助开发者声明式地...
2. **配置事务增强**:通过`tx:advice`标签,你可以定义事务的增强规则,即如何根据方法名来决定事务的传播行为。例如: ```xml <tx:advice id="txAdvice" transaction-manager="txManager"> <tx:attributes> ...
首先,我们来看`<tx:advice>`标签,它是Spring AOP(面向切面编程)中用于定义事务策略的部分。`id="txAdvice"`是这个事务建议的唯一标识,`transaction-manager`属性指定了事务管理器,这里是`...
在Spring的配置文件中定义事务管理器,然后通过<aop:advisor>、<tx:advice>和<aop:config>等元素声明事务的传播行为、隔离级别、超时时间等属性。例如: ```xml <tx:advice id="txAdvice" transaction-manager=...
接着,使用`<tx:advice>`和`<tx:attributes>`定义事务策略,例如,将所有以`insert*`、`update*`和`delete*`开头的方法设置为`REQUIRED`传播属性,意味着这些方法必须在事务中执行。最后,使用`<aop:config>`配置...
<tx:advice id="TestAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="save*" propagation="REQUIRED"/> ... </tx:attributes> </tx:advice> ``` `propagation=...
Austin, TX: Pro-ed Publications, 128 pp., [dollar]16.00 B O O K R E V I E W S GILBERT R. GREDLER University of South Carolina BRADLEY-JOHNSON, S. (1 986). Psychoeducational assessment of ...
2. **XML配置声明事务**:在Spring的XML配置文件中,我们可以通过`<tx:annotation-driven>`元素开启基于注解的事务管理,并通过`<tx:advice>`和`<aop:config>`元素定义事务策略。例如: ```xml <tx:annotation-...