1.SpringAOP有兩種實現方式,分別就是AspectJ與Schema.net
2.Schema風格代理
Spring默認支持的AOP方式,blog
基於XML的方式配置get
它僅支持在運行期基於動態代理的方式將aspect織入目標代碼中來實現aop,編譯
由於運行時織入,因此對static,final修飾的方法沒法動態代理,配置
切入點表達式默認支持AspectJ語法,同時支持SpEl語法(不知道需不須要配置)aop
3.AspectJ風格語法
須要在XML中添加<aop:aspectj-autoproxy/>來支持方法
基於註解的方式配置static
支運行期動態代理方式織入,(默認選項)
支持編譯期織入(能夠對static/final修飾的方法支持)
小結:
Spring自己對AOP就已經支持了(Schema風格),同時經過對AspectJ的兼容,使SpringAOP更增強大,尤爲是使用AspectJ語法進行定義切入點的方式更加簡潔和強大.