aop 幾個應用場景:
1、用於日誌打印
2、用於全局異常處理攔截
3、返回值統壹處理
4、多數據源切換
execution(方法表達式)
execution(* cn.sunpiaoliang.service.. . (..))
cn.sunpiaoliang.service 這個路徑下的包或子包所有方法和所有類型的參數 返回值為任何類型
註:
第壹個 “ ” 任何類型返回值
cn.sunpiaoliang.service 路徑
.. 包或子包
第二個“ ” 所有類
@annotation
匹配當前執行方法持有指定註解的方法,可以直接寫註解,也可以直接寫全路徑
@within
匹配所以持有指定註解類型內的方法,全路徑
aop主要是通過代理實現
1、JDK代理
2、CGlib 代理