1. 程式人生 > >Spring之Advice應用(上)

Spring之Advice應用(上)

總的來說:切入點在執行相應方法的時候,會去執行切面中的對應方法

這裡寫圖片描述

下面寫出一個完整的前置通知的例子:
1、配置檔案如下:

    <aop:config>

        <aop:aspect id="moocAspectAOP" ref="moocAspect">

            <aop:pointcut expression="execution(* com.wuyonghu.spring2.AspectBiz.*(..))"
                id="moocPointCut" />
            <aop:before
method="before1" pointcut-ref="moocPointCut" />
</aop:aspect> </aop:config>
1、先看切入點,這裡的pointcut的expression為* com.wuyonghu.spring2.AspectBiz.*(..),表示的是此類下面的所有方法執行的時候都可以認為是一個切入點
2、再看aop-aspect,其中的ref表示的是哪個類作為切面,ref中為bean的id,切面可以看作是切入點的輔助類
3、最後看aop-before,因為是before,那麼其中的method
就表示在執行切入點中的任何方法前先執行切面中的該方法

2、切入點後通知:
這裡寫圖片描述

3、丟擲異常通知

這裡寫圖片描述

4、finally advice:最後執行的方法,就算有異常也會執行,就像try catch中的finally

這裡寫圖片描述