声明式事务(XML)【理解】【重点】
来源:互联网 发布:城乡居民收入差距数据 编辑:程序博客网 时间:2024/06/16 19:38
思路分析:将编程式事务中的通用代码抽取出来,制作成独立的around通知使用AOP工作原理,将事务管理的代码动态织入到原始方法中。由于该功能使用量较大,Spring已经将该通知制作完毕。
1.开启tx命名空间
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd
">
2.定义Spring提供的事务管理通知
<!-- 事务管理Advice,由Spring提供 -->
<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<tx:method name="transfer"/>
</tx:attributes>
</tx:advice>
注意:TxAdvice需要为其指定一个事务管理器的Bean
<!-- 声明事务管理器的Bean,该Bean依赖数据源对象 -->
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource"></property>
</bean>
3.设置AOP
<aop:config>
<aop:advisor advice-ref="txAdvice" pointcut="execution(void *..*.*.trans*(..))"/>
</aop:config>
4.将原始编程式事务控制中的控制代码删除
5.advice的参数
tx:advice:定义事务管理的通知(环绕通知)
transaction-manager:声明事务管理的实现类
tx:method:定义参与事务管理的方法
7.事务传播行为 配置的是事务协调员(事务加入者)针对事务管理员(事务发起者)所携带的事务的处理态度 事务管理者(业务) 事务协调员(数据) REQUIRED T1 T1 无 T2 REQUIRES_NEW T1 T2 无 T1 SUPPORTS NOT_SUPPORTED MANDATORY NEVER NESTED T1 无 T1 无 T1 无 T1 无 savePoint()
T1 无 无 无 T1 错误 错误 OK
- 声明式事务(XML)【理解】【重点】
- 声明式事务(注解)【理解】【应用】【重点】
- Spring4深入理解----事务(声明式事务和xml配置事务,事务传播属性,事务其他属性(隔离级别&回滚&只读&过期))
- Spring4深入理解----事务(声明式事务和xml配置事务,事务传播属性,事务其他属性(隔离级别&回滚&只读&过期))
- Bean配置(XML)【理解】【应用】【重点】
- AOP(XML)【理解】【应用】【重点】
- SSH整合(XML)【理解】【应用】【重点】
- 实现声明式事务,在Services.xml
- Spring声明式事务XML配置
- 对Spring声明式事务的理解
- spring 事务(1事务的基本理解和实现声明式事务管理)
- spring事务系列(3)--声明式事务管理(xml方式)
- Spring整合hibernate的事务属性介绍以及声明式事务管理 (使用Annotation和xml)
- Spring整合hibernate的事务属性介绍以及声明式事务管理 (使用Annotation和xml)
- SSM创建-Spring 使用XML配置声明式事务(11)
- 12、SSM框架-Spring 使用XML配置声明式事务(12)
- Spring声明式事务配置(xml配置与注解配置)
- Spring事务管理——使用XML配置声明式事务
- Angular---作用域与事件
- c++第五次实验 项目二 正整数类
- Android 意图(Intent)和过滤器(Filter)
- JAVA 编辑工具JCreator的环境配置说明
- eclipse中如何在当前工程中查找一个字符串
- 声明式事务(XML)【理解】【重点】
- HTML-from表单
- Linux之ACL权限
- ROS Indigo安装和配置
- Valid Parentheses
- angular指令
- Android 资源(Resources)访问
- 浅谈fastjson的常用使用方法
- 【架构】REST架构风格简洁