Spring 學習筆記(三)——AOP

一、面向切面 Spring AOP

1. 常用概念   
    面向切面:把應用中與業務邏輯無關的功能分離出來,而這些無關的功能被稱爲橫切關注點
    橫切關注點(cross-cutting concerns):可以看成是影響應用多處的功能
    通知(advice):通知定義了切面是什麼以及何時使用
    連接點(Joinpoint):切面需要作用的地方
    切點(Pointcut):切點定義了切面作用在何處,是連接點所在的一個範圍
    切面(Aspect):橫切關注點所形成的特殊的類,通知和切點共同定義了切面的全部內容,“是什麼,在何時何處使用”

2. AOP 配置

3.  示例


3.1 改進:

    如果想讓定義的切點被其它切面所引用,可以把 <aop:point-cut> 寫在 <aop:config> 元素的作用域裏

3.2 聲明環繞通知:




   
環繞通知對應的方法中,需要傳入 ProceedingJoinPoint 參數,通過調用 proceed() 方法來執行被環繞的方法,在 proceed() 方法的前面,後面分別定義要執行的邏輯
3.3 爲通知傳遞參數

3.4 通過切面引入新功能

    type-matching:指定被通知的 bean;implement-interface:這些 bean   需要實現的接口;default-impl:定義實現此接口的方法。前面的 AOP 是爲 bean 中的方法添加新的功能,而這裏是爲 bean 添加新的方法/功能

4. 切面的註解
... ...

二、AspectJ

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章