spring+mybaits xml配置解析+事务相关+时序图
2018-01-08 20:31
513 查看
原文链接:http://www.spring4all.com/article/495 必看
(SqlSessionFactory mapper生成代理类并代理 bean如何构造 实际执行sql时候调用代理类 创建了一个TransactionInterceptor的bean,作为事务切面的执行方法。标签解析 标签<aop:config>作用是创建了DefaultBeanFactoryPointcutAdvisor作为拦截器,把满足切点的bean进行代理使用事务拦截器进行拦截。具体标签逻辑 上面介绍完后就可以使用事务切面了,但是有时候还需要在具体类或者方法上进行注解行事务,那么这就需要加
<tx:annotation-driven transaction-manager="transactionManager" />配置 )时序图。
几篇spring事务相关:
1 spring+mybaits xml配置解析+事务相关+时序图:
http://blog.csdn.net/wabiaozia/article/details/79006844
2 spring事务处理时xml配置和注解Transactional配置哪个优先级高:
http://blog.csdn.net/wabiaozia/article/details/78990687
3 spring事务和aop问题小结
http://blog.csdn.net/wabiaozia/article/details/78981368
部分摘选:
一般我们会在datasource.xml中进行如下配置,但是其中每个配置项原理和用途是什么,并不是那么清楚,如果不清楚的话,在使用时候就很有可能会遇到坑,所以下面对这些配置项进行一一解说
(SqlSessionFactory mapper生成代理类并代理 bean如何构造 实际执行sql时候调用代理类 创建了一个TransactionInterceptor的bean,作为事务切面的执行方法。标签解析 标签<aop:config>作用是创建了DefaultBeanFactoryPointcutAdvisor作为拦截器,把满足切点的bean进行代理使用事务拦截器进行拦截。具体标签逻辑 上面介绍完后就可以使用事务切面了,但是有时候还需要在具体类或者方法上进行注解行事务,那么这就需要加
<tx:annotation-driven transaction-manager="transactionManager" />配置 )时序图。
几篇spring事务相关:
1 spring+mybaits xml配置解析+事务相关+时序图:
http://blog.csdn.net/wabiaozia/article/details/79006844
2 spring事务处理时xml配置和注解Transactional配置哪个优先级高:
http://blog.csdn.net/wabiaozia/article/details/78990687
3 spring事务和aop问题小结
http://blog.csdn.net/wabiaozia/article/details/78981368
部分摘选:
一般我们会在datasource.xml中进行如下配置,但是其中每个配置项原理和用途是什么,并不是那么清楚,如果不清楚的话,在使用时候就很有可能会遇到坑,所以下面对这些配置项进行一一解说
(1)配置数据源 <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"> <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" /> <property name="url" value="${db_url}" /> <property name="username" value="$db_user}" /> <property name="password" value="${db_passwd}" /> <property name="maxWait" value="${db_maxWait}" /> <property name="maxActive" value="28" /> <property name="initialSize" value="2" /> <property name="minIdle" value="0" /> <property name="timeBetweenEvictionRunsMillis" value="db_time" /> </bean> (2)创建sqlSessionFactory <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="mapperLocations" value="classpath*:com/**/mapper/*Mapper*.xml" /> <property name="dataSource" ref="dataSource" /> <property name="typeAliasesPackage" value="com.test.***.dal" /> </bean> (3)配置扫描器,扫描指定路径的mapper生成数据库操作代理类 <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="annotationClass" value="javax.annotation.Resource"></property> <property name="basePackage" value="com.test.***.dal.***.mapper" /> <property name="sqlSessionFactory" ref="sqlSessionFactory" /> </bean> (4)配置事务管理器 <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource" /> </bean> (5)声明使用注解式事务 <tx:annotation-driven transaction-manager="transactionManager" /> (6)注册各种beanfactory处理器 <context:annotation-config /> (7)该配置创建了一个TransactionInterceptor的bean,作为事务切面的执行方法 <tx:advice id="defaultTxAdvice"> <tx:attributes> <tx:method name="*" rollback-for="Exception" /> </tx:attributes> </tx:advice> (8)该配置创建了一个DefaultBeanFactoryPointcutAdvisor的bean,该bean是一个advisor,里面包含了pointcut和advice.前者说明切面加在哪里,后者是执行逻辑。此处可以配多个advisor <aop:config> <aop:pointcut id="myCut" expression="(execution(* *..*BoImpl.*(..))) "/> <aop:advisor pointcut-ref="myCut" advice-ref="defaultTxAdvice" /> </aop:config>
相关文章推荐
- Spring源码解析——配置文件读取相关的类
- Spring之旅、装配Bean、最小化Spring XML配置、面向切面的Spring、征服数据库、事务管理示例源代码
- web容器中实例化spring相关配置解析
- spring context.xmL配置数据库事务以及aop
- 加载spring在web.xml中相关配置
- 1、Spring DI xml配置文件方式解析原理
- SSH整合-关于Spring中applicationContext.xml文件对于事务的一些配置
- spring采用基于xml配置方式进行事务的处理
- Spring中使用DataSourceTransactionManager进行事务管理的xml配置
- Spring配置文件applicationContext.xml之事务管理
- spring事务控制--xml配置与annotation注解 优先级对比
- Spring中的事务管理xml配置
- Spring4.3.x 浅析xml配置的解析过程(9)——解析aop命名空间之config标签
- SQL文的管理和解析(一)利用Spring的Resource管理SQL的XML配置文件
- Spring 在xml配置里配置事务
- Spring源码浅析 -- XML配置文件的载入与解析
- spring学习笔记(24)——xml方式配置事务
- Spring的事务管理,applicationContext.xml中的配置
- 单独提出来,spring3 web.xml配置解析
- spring采用基于xml配置方式进行事务的处理