一.
使用TransactionProxyFactoryBean創(chuàng)建事務代理(通常事務代理以Service層為目標bean)
<bean id="personService" class="com.lin.personServiceImpl">
<property name="personDao" ref="personDao"/>
</bean>
//配置hibernate的事務管理器,使用HibernateTransactionManager類,該類實現(xiàn)了PlatformTransactionManager接口,針對hibernate 持久化連接的特定實現(xiàn)
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
//配置personService bean的事務代理
<bean id="personServiceProxy"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
//指定事務管理器
<property name="transactionManager" ref="transactionManager"/>
//指定需要生成代理的日標bean
<property name="persionService" ref="persionService"/>
//指定事務屬性
<property name="transactionAttributes"
<props>
<prop key="insert*">PROPAGATION_REQUIRED,-MyCheckedException</prop>
<prop key="update*>PROPAGATION_REQUIRED</prop>
<prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
</props>
</property>
二.使用自動創(chuàng)建代理簡化事務配置
使用BeanNameAutoProxyCreator 和DefaultAdvisorAutoProxyCreator創(chuàng)建代理時,并不一定是創(chuàng)建事務代理,關鍵在于傳入的攔截器,如果傳入事務攔截器,將可自動生成事務代理.
//使用jdbc局部事務策略
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
//配置目標bean1,該目標bean將由Bean后處理器自動生成代理
<bean id="testbean1" class="com.lin.Testbean1Impl">
<property name="dataSource" ref="dataSource"/>
</bean
//配置目標bean2,該目標bean將由Bean后處理器自動生成代理
<bean id="testbean2" class="com.lin.Testbean2Impl">
<property name="dataSource" ref="dataSource"/>
</bean
//配置事務攔截器bean
<bean id="transactionInterceptor"
class="org.springframework.transaction.interceptor.TransactionInterceptor">
//事務攔截器需要注入一個事務管理器
<property name="transactionManager" ref="transactionManager"/>
<property name="transactionAttributes">
//定義事務傳播屬性
<props>
<prop key="insert*">PROPAGATION_REQUIRED</prop>
<prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="*">PROPAGATION_REQUIRED</prop>
</props>
</property>
//定義BeanNameAutoProxyCreator的Bean后處理器
<bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
<list>
<value>testbean1</value>
<value>testbean2</value>
</list>
//此處可以增加其他需要創(chuàng)建事務代理的bean
</property>
//定義BeanNameAutoProxyCreator所需要的攔截器
<property name="interceptorNames">
<list>
<value>transactionInterceptor</value>
//此處可以增加其他新的Interceptor
</list>
</property>
</bean>
| |||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
---|---|---|---|---|---|---|---|---|---|
27 | 28 | 29 | 30 | 1 | 2 | 3 | |||
4 | 5 | 6 | 7 | 8 | 9 | 10 | |||
11 | 12 | 13 | 14 | 15 | 16 | 17 | |||
18 | 19 | 20 | 21 | 22 | 23 | 24 | |||
25 | 26 | 27 | 28 | 29 | 30 | 31 | |||
1 | 2 | 3 | 4 | 5 | 6 | 7 |
長春語林科技歡迎您!
常用鏈接
留言簿(6)
隨筆分類
- ajax(2)
- android(5)
- css(2)
- db2(2)
- docker(10)
- flex(22)
- hibernate(16)
- html5(9)
- java(12)
- java8(8)
- jquery(4)
- js(30)
- jsp(2)
- jstl(3)
- linux(14)
- mongodb(1)
- mui(1)
- mysql(14)
- oracle(3)
- spring(8)
- sqlserver(4)
- struts(9)
- struts2(13)
- tomcat(6)
- UML(1)
- util(50)
- vue(1)
- weblogic(1)
隨筆檔案
- 2020年4月 (1)
- 2020年3月 (1)
- 2020年2月 (2)
- 2019年10月 (2)
- 2019年9月 (1)
- 2019年7月 (1)
- 2019年4月 (1)
- 2019年1月 (1)
- 2018年12月 (2)
- 2018年8月 (1)
- 2018年6月 (3)
- 2018年5月 (9)
- 2018年3月 (9)
- 2017年12月 (1)
- 2017年10月 (1)
- 2017年7月 (1)
- 2017年6月 (1)
- 2017年5月 (1)
- 2017年3月 (3)
- 2017年2月 (2)
- 2017年1月 (1)
- 2016年12月 (1)
- 2016年11月 (1)
- 2016年9月 (1)
- 2016年4月 (3)
- 2016年3月 (2)
- 2015年8月 (5)
- 2015年3月 (1)
- 2014年8月 (1)
- 2012年11月 (1)
- 2012年5月 (2)
- 2012年4月 (5)
- 2011年12月 (1)
- 2011年10月 (3)
- 2011年9月 (2)
- 2011年8月 (10)
- 2011年7月 (3)
- 2011年6月 (4)
- 2011年5月 (2)
- 2011年4月 (3)
- 2011年3月 (12)
- 2011年1月 (2)
- 2010年12月 (1)
- 2010年9月 (2)
- 2010年8月 (4)
- 2010年6月 (1)
- 2010年4月 (1)
- 2010年3月 (1)
- 2009年11月 (1)
- 2009年9月 (2)
- 2009年8月 (1)
- 2009年7月 (2)
- 2009年6月 (1)
- 2009年5月 (3)
- 2009年4月 (8)
- 2009年3月 (5)
- 2009年2月 (4)
- 2009年1月 (2)
- 2008年12月 (10)
- 2008年11月 (2)
- 2008年9月 (10)
- 2008年8月 (12)
- 2008年7月 (12)
- 2008年6月 (3)
- 2008年5月 (53)
文章分類
文章檔案
相冊
收藏夾
搜索
最新評論

- 1.?re: js 操作文件[未登錄]
- 00
- --00
- 2.?re: s:bean.jsp
- fdfdsa
- --dfasdf
- 3.?re: hibernate 常用標識生成器
- 藝達廣告歡迎您
- --藝達廣告
- 4.?re: linux mod_jk.so 下載[未登錄]
- 3Q!
- --me
- 5.?re: weblogic參數(shù)設置[未登錄]
- 垃圾
- --xx