Spring之Advice應用(上)
阿新 • • 發佈:2019-01-31
總的來說:切入點在執行相應方法的時候,會去執行切面中的對應方法
下面寫出一個完整的前置通知的例子:
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