成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

Spring aop 如何通過獲取代理對象實現事務切換

瀏覽:94日期:2023-06-30 16:50:00
Spring aop 獲取代理對象實現事務切換

在項目中,涉及到同一個類中一個方法調用另外一個方法,并且兩個方法的事務不相關,

這里面涉及到一個事務切換的問題,一般的方法沒問題,根據通過aop注解在方法上通過加注解標識,

答案是:

通過spring aop類里面的AopContext類獲取當前類的代理對象,

這樣就能切換對應的事務管理器了,具體做法如下:

(1).在applicationContext.xml文件中配置如下:

<!-- 開啟暴露Aop代理到ThreadLocal支持 --> <aop:aspectj-autoproxy expose-proxy='true'/> (2).在需要切換的地方獲取代理對象,

再調用對應的方法,如下:

((類名) AopContext.currentProxy()).方法(); (3).注意

這里需要被代理對象使用的方法必須是public類型的方法,不然獲取不到代理對象,會報下面的錯誤:

java.lang.IllegalStateException: Cannot find current proxy: Set ’exposeProxy’ property on Advised to ’true’ to make it available.

開啟暴露AOP代理即可.

因為開啟事務和事務回滾,實際這個過程是aop代理幫忙完成的,當調用一個方法時,它會先檢查時候有事務,有則開啟事務,

當調用本類的方法是,它并沒有將其視為proxy調用,而是方法的直接調用,所以也就沒有檢查該方法是否含有事務這個過程,

那么本地方法調用的事務也就無效了。

獲取代理bean的原始對象

public class AopTargetUtil { /** * 獲取 目標對象 * @param proxy 代理對象 * @return * @throws Exception */ public static Object getTarget(Object proxy) throws Exception { if(!AopUtils.isAopProxy(proxy)) { return proxy;//不是代理對象 } if(AopUtils.isJdkDynamicProxy(proxy)) { return getJdkDynamicProxyTargetObject(proxy); } else { //cglib return getCglibProxyTargetObject(proxy); } } private static Object getCglibProxyTargetObject(Object proxy) throws Exception { Field h = proxy.getClass().getDeclaredField('CGLIB$CALLBACK_0'); h.setAccessible(true); Object dynamicAdvisedInterceptor = h.get(proxy); Field advised = dynamicAdvisedInterceptor.getClass().getDeclaredField('advised'); advised.setAccessible(true); Object target = ((AdvisedSupport)advised.get(dynamicAdvisedInterceptor)).getTargetSource().getTarget(); return target; } private static Object getJdkDynamicProxyTargetObject(Object proxy) throws Exception { Field h = proxy.getClass().getSuperclass().getDeclaredField('h'); h.setAccessible(true); AopProxy aopProxy = (AopProxy) h.get(proxy); Field advised = aopProxy.getClass().getDeclaredField('advised'); advised.setAccessible(true); Object target = ((AdvisedSupport)advised.get(aopProxy)).getTargetSource().getTarget(); return target; }}

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
久久久久97国产精华液好用吗| 亚洲欧美日韩视频二区 | 51精品国自产在线| 日本不卡1234视频| 色视频一区二区| 日韩电影在线观看一区| 久久九九免费| 美腿丝袜亚洲三区| 久久免费99精品久久久久久| 亚洲一区在线电影| 久久精品国产99精品国产亚洲性色| 一区二区三区免费| 在线亚洲观看| 亚洲狠狠丁香婷婷综合久久久| 国产日韩三级在线| 99r精品视频| 欧美成人国产一区二区| 风间由美一区二区三区在线观看| 91精品婷婷国产综合久久| 国产成人一区在线| 久久婷婷综合激情| 欧美久久久久| 亚洲精品一卡二卡| 国产精品日韩一区二区 | 免费成人在线观看视频| 欧美性视频一区二区三区| 欧美日韩国产在线一区| 国产精品网站在线观看| 一区二区三区四区国产| 午夜精品一区在线观看| 欧美色图12p| 成人黄色a**站在线观看| 久久久国产午夜精品| 在线观看视频日韩| 亚洲一区在线观看网站| 日本道色综合久久| 国产精品18久久久| 欧美mv和日韩mv的网站| 色综合天天天天做夜夜夜夜做| 国产精品国产精品国产专区不蜜 | 欧美丰满美乳xxx高潮www| 国产成人亚洲综合色影视| 久久久亚洲欧洲日产国码αv| 懂色av一区二区三区免费观看| 国产丝袜美腿一区二区三区| 亚洲国产精品123| 天堂一区二区在线| 欧美日韩视频第一区| 成人av高清在线| 日韩美女久久久| 久久久久91| 激情综合网最新| 久久久精品国产99久久精品芒果 | 国产一区二区高清| 免费成人在线视频观看| 精品国产91亚洲一区二区三区婷婷| 国产在线观看一区| 天堂久久久久va久久久久| 欧美精品九九99久久| 色综合色综合色综合| 亚洲激情图片qvod| 欧美日韩一二三区| 欧美aa国产视频| 亚洲成av人片在www色猫咪| 91.com视频| 亚洲电影成人| 久久99精品久久久久久| 久久久综合视频| 国产嫩草一区二区三区在线观看| 国产综合色在线视频区| 国产午夜一区二区三区| 久久国产免费| 不卡的av中国片| 亚洲 欧美综合在线网络| 精品福利在线导航| 国产精品免费在线| 国产91丝袜在线18| 一区二区高清在线| 日韩欧美一区二区免费| 99国产精品久久久久久久久久久| 亚洲一区二区三区四区在线| 日韩视频在线观看一区二区| 一区二区国产在线观看| 风间由美一区二区av101 | 国产美女一区二区三区| 国产精品萝li| 欧美日韩免费观看一区三区| 欧美日韩国产精品一区二区亚洲| 五月天中文字幕一区二区| 日韩精品一区二区三区在线| 99热这里只有成人精品国产| 国产传媒一区在线| 亚洲国产日韩一区二区| 亚洲精品一区二区三区蜜桃下载| 噜噜噜噜噜久久久久久91 | 丁香婷婷综合激情五月色| 亚洲男人的天堂av| 日韩一二三区不卡| 国产伦精品一区二区三区| 成人午夜视频在线| 婷婷成人激情在线网| 久久精品亚洲乱码伦伦中文| 色综合激情久久| 欧美日韩一区在线视频| 精品午夜久久福利影院| 亚洲婷婷综合色高清在线| 日韩一区二区精品| 狼狼综合久久久久综合网 | 欧美主播一区二区三区美女 久久精品人| 不卡高清视频专区| 麻豆久久久久久| 韩国成人精品a∨在线观看| 日韩理论片中文av| 26uuu色噜噜精品一区二区| 色哟哟在线观看一区二区三区| 欧美不卡一区| 久久99国产精品久久99果冻传媒| 亚洲精品网站在线观看| 久久久美女艺术照精彩视频福利播放| 欧美日韩国产三级| 亚洲欧美视频| 一区免费在线| caoporn国产精品| 精品一区二区三区在线播放视频 | 国产精品久久久久影视| 日韩午夜中文字幕| 色中色一区二区| 亚洲精品1区| 91丨九色丨国产丨porny| 韩国成人在线视频| 日本不卡高清视频| 亚洲国产精品一区二区www在线 | 国产精品白丝av| 午夜影院久久久| 成人欧美一区二区三区| 国产午夜精品一区二区三区视频 | 中文幕一区二区三区久久蜜桃| 6080午夜不卡| 色哟哟一区二区在线观看| 在线一区免费观看| 黄色成人精品网站| 99re热这里只有精品免费视频| 国产一区日韩二区欧美三区| 日韩专区中文字幕一区二区| 玉米视频成人免费看| 国产精品理伦片| 国产日韩欧美综合一区| www久久精品| 日韩欧美的一区| 3d成人h动漫网站入口| 欧美日韩一级黄| 欧美特级限制片免费在线观看| 色婷婷综合视频在线观看| 西西裸体人体做爰大胆久久久| 一区福利视频| 狠狠爱成人网| 欧美系列一区| 91看片淫黄大片一级在线观看| 国产电影一区在线| 极品美女销魂一区二区三区免费| 日韩电影一二三区| 中文字幕亚洲一区二区av在线| 国产色一区二区| 久久亚洲精华国产精华液| 欧美电视剧免费全集观看| 日韩亚洲电影在线| 日韩欧美高清一区| 精品少妇一区二区三区在线播放| 欧美一区二区三区影视| 欧美一区二区三区免费视频| 欧美一卡在线观看| 欧美一区二区精美| 日韩欧美中文字幕制服| 日韩视频免费观看高清完整版在线观看| 在线成人av网站| 91精品国产欧美一区二区| 欧美精选一区二区| 日韩视频免费观看高清完整版在线观看| 欧美一区二区三区四区五区 | 亚洲免费资源在线播放| 亚洲欧美日韩久久精品| 亚洲女性喷水在线观看一区| 一区二区三区av电影 | 最新不卡av在线| 亚洲乱码国产乱码精品精的特点| 亚洲欧美一区二区三区孕妇| 亚洲日韩欧美一区二区在线| 亚洲精品国产第一综合99久久| 亚洲在线免费播放| 日韩精品每日更新| 精品一区二区日韩| 国产电影精品久久禁18| 91天堂素人约啪| 伊人激情综合| 国产精品日韩久久久| 日本高清不卡一区| 日韩天堂在线观看| 国产精品卡一卡二| 亚洲777理论| 激情成人综合网|