獲取的proxyfactorybean不是那個proxyfactorybean而是它所**的內容。
@aspectj切面使用@aspect註解配置
用@aspect註解的類可以有方法和字段,他們也可能包括切入點(pointcut),通知(advice)和引入(introduction)宣告
@aspect註解是不能夠通過類路徑自動檢測發現的,所以需要配合使用@component注釋或者在xml配置bean
乙個雷的@aspect會使它成為乙個切面,並且將自己從自動**中排除。
pointcut
乙個切入點通過乙個普通的方法來提供,並且使用@pointcut註解,方法返回型別必須為void。
before advice
@component
//這個類能夠被bean識別
@aspect
public
class
moocaspect
}
after returning advice
@afterreturning(pointcut="execution(*com.imooc.aop.aspectj.biz.*biz.*(..))",returning="returnvalue")
public
void
afterreturning(object returnvalue)
after throwing advice,可以在@afterthrowing()括號內部新增throwing屬性,把錯誤捕獲進來,方便進一步的處理。
after(finally)advice常用來釋放資源,無論發生異常與否都將執行。
環繞通知,用@around進行註解,通知內部的第乙個引數必須是proceedingjoinpoint型別,在通知內部呼叫proceedingjoinpoint的proceed()方法會執行真正的方法。
@before("pointcut()&&args(arg)")
public
void
beforewithparam(string arg)
練手程式2006 9 7
13 01 2006 9 7 昨天下午的時候跟jailu聊天的時候說了這個題 從1到100,100個數字相加,和為100的演算法,可以1位,2位,3位等,不限位數相加,數字不能重複,可以有多少種演算法,並把 貼出 可以這樣 1 99 2 98 也可以這樣 1 2 97 更可以這樣 1 2 3 5 7...
小程式練手(c )
給定乙個陣列input 如果陣列長度n為奇數,則將陣列中最大的元素放到 output 陣列最中間的位置,如果陣列長度n為偶數,則將陣列中最大的元素放到 output 陣列中間兩個位置偏右的那個位置上,然後再按從大到小的順序,依次在第乙個位置的兩邊,按照一左一右的順序,依次存放剩下的數。例如 inpu...
練手小程式(四)
這次的練手程式依然來自於knight lab的部落格文章five mini programming projects for the python beginner,任務的名字叫做textbased adventure game,也就是文字冒險遊戲 目標 我們的目標是完整的建立乙個文字小遊戲,這個小...