奇怪的AOP方法被呼叫2次解決辦法

2021-09-01 08:01:18 字數 315 閱讀 4487

aop的方法被呼叫2次,很是奇怪,最後發現是bean相互引用引起的,具體原理不知。

解決辦法,在***類中通過taget獲得需要引用的方法。

如:servicea引用了serviceb

serviceb引用了servicea

servicea中有***interceptor

interceptor引用了serviceb

此時interceptor中的方法會被呼叫2次

解決版本就是interceptor不引用serviceb,還是通過((servicea)target).getserviceb來獲得serviceb

解決AOP切面在巢狀方法呼叫時不生效問題

在使用aop切面程式設計中,通常會遇到乙個方法巢狀呼叫,導致aop不生效的問題。如下面所說明的 在乙個實現類中,有2個方法,方法a,方法b,其中方法b上面有個註解切面,當方法b被外部呼叫的時候,會進入切面方法。但當方法b是被方法a呼叫時,並不能從方法b的註解上,進入到切面方法,即我們經常碰到的方法巢...

java Timer 呼叫兩次 原因 解決方法

ide eclipse server glassfish 用到timer,任務是每10s進行一項任務。有個servlet在伺服器啟動時被載入,並且在init裡開始定時器任務 遇到的問題,有時候10s執行一次,但是有時候10s執行兩次,而且這兩次是相互隔離的,互補干擾,並且各任務之間間隔也是10s。感...

奇怪的ORA 12145解決方法

今天訪問oracle資料庫時輸入正確的使用者名稱 密碼,卻提示ora 12145 問題 使用本地net服務名進入資料庫,提示ora 12145 使用ip sid進入資料庫,正常 初步定位是tns填寫有問題,把乙個可以用本地net服務名的那幾行數值複製並覆蓋有問題,然後改成相應的數值 再次進入,問題依...