日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Aop事务小结(事务管理器和自身构建)

發布時間:2025/5/22 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Aop事务小结(事务管理器和自身构建) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

聲明市事務是利用AOP來實現的。

1、采用事務管理器AOP:

<!--3、配置事務切面;控制住連接池 --><bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="comboPooledDataSource"></property></bean>2、配置開啟基于注解的事務控制 <tx:annotation-driven/>3、給事務方法上加注解 @Transactional 2、自身構建AOP 基于注解的AOP

1)對切面類的方法進行配置
2)將切面類和業務邏輯組件都加入到容器
3)告訴SpringIOC容器哪個類是切面類@Aspect
4)開啟基于注解的AOP功能

基于XML的AOP

1)對切面類的方法進行配置
2)將切面類和業務邏輯組件都加入到容器
3)告訴SpringIOC容器哪個類是切面類@Aspect

?在其他類中本類事務,才會分大小方法的事務特性。

/*** 結果:沒有任何事務特性;* * 本類調用本類事務;* 1、現象:大方法是默認REQUIRED* 小方法兩個都設置了REQUIRES_NEW,但是沒用* 2、現象:大方法是默認REQUIRES_NEW* 小方法兩個都設置了REQUIRES_NEW,但是沒用* 3、現象:大方法是默認REQUIRES_NEW* 小方法兩個都是REQUIRED,還是沒用* * 為什么?怎么調都調整不了一個回滾一個不回滾?* MulService{* BookService bs = 代理;* mulTx(){* //代理.方法()* bs.checkout();* bs.updatePrice();* }* }* * * //兩個小事務怎么設置都不行,都是一起滾;* BookService{* //* hahah(){* //自己方法;把這個方法cv過來* checkout();* //cv進haha* updatePrice();* }* }* * {* hahah(){* int price = bookDao.getPrice(isbn);//1、減用戶余額bookDao.updateBalance(price, username);//2、減圖書的庫存bookDao.updateStock(isbn);bookDao.updatePrice(isbn);* }* }* 原因:* 所有切入了事務的業務邏輯組件,在ioc容器中保存的是這個組件的代理對象;* 本類直接調用本類方法,就相當于是將本類的方法的代碼,cv進當前方法里面* 現象就是其實只有一個事務,就是hahah();* * 類編譯;* 本類方法調用本類方法,相當于將另外一個方法的實現cv過來;*/

?

?

轉載于:https://www.cnblogs.com/limingxian537423/p/7252919.html

總結

以上是生活随笔為你收集整理的Aop事务小结(事务管理器和自身构建)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。