#AOP概述 ##日誌 咱們須要在不一樣業務邏輯的頭尾都添加日誌等相同功能正則表達式
##缺點 若是在也安全
##AOP AOP能夠把業務邏輯與非業務邏輯從工程組織上分開。框架
##AOP優勢函數
##從抽象總計AOP AOP也叫作橫切,經過AOP切面,能夠實現相同非業務代碼切入到全部相同類型的業務代碼。日誌
##AOP基本概念 Aspect:咱們把MyLogger叫作Aspect(切面),咱們把業務邏輯代碼叫作Join point。函數執行是一個Join point。咱們在函數執行過程作一些AOP操做。還有一些其餘的Join point,例如屬性訪問,能夠在屬性訪問以前或者以後也能夠添加AOP。
Spring AOP並無提供屬性訪問的AOP,只提供了函數的AOP。code
Advice:咱們把MyLogger在函數入口或者出口時打印日誌,定義切面在某個特定的點執行功能。圖片
在實際開發過程當中,咱們要告訴AOP框架咱們哪些業務邏輯是須要添加Aspect的。咱們須要有種方式告訴Aspect,在哪些函數上要執行Aspect。通常咱們使用正則表達式的方式,例如Caculator.*
ip
##AOP術語開發
Aspect、Pointcut、Advice,若是咱們須要定義AOP相關功能的首先就須要定義這些內容。it
##Advice類型 咱們會在函數入口出口都會作一些操做。
##Spring AOP
注意:若是在開發中須要更完整的AOP功能,能夠去了解AspectJ,是Eclipse基金會下的子項目。
##Spring AOP 經過兩種不一樣的方式