0. 導讀
經過前面十幾篇的 Spring 源碼解讀,IOC 流程暫時告一段落,接下來幾篇文章我們來講講另外一個話題 AOP。
AOP(Aspect Oriented Programming),即面向切面編程,它並不是 Spring 新提出來的概念,而是一種軟件思想,Spring 只是該思想的一個具體應用。
本文不會講解 AOP 的基本概念,如果不清楚的讀者可以自行 Google 一下。
JDK 動態代理和 CGlib 動態代理實現方式
AOP 解析
<aop:aspectj-autoproxy/>
標籤流程1. JDK 動態代理實現
2. CGlib 動態代理實現
3.<aop:aspectj-autoproxy/> 流程分析
大家都知道,AOP 功能是通過打開 <aop:aspectj-autoproxy/>
,前面文章介紹過自定義標籤,不熟悉的朋友可以翻翻原來的文章,我們找到AopNamespaceHandler
來看看是如何解析這個標籤的。
4. 總結
本文介紹了兩種動態代理方式,分析了 <aop:aspectj-autoproxy/>
標籤解析流程,同時註冊了AnnotationAwareAspectJAutoProxyCreator
,下篇文章我們來分析 Spring 的 AOP 是怎麼實現的,敬請期待。
創作不易,白嫖點個再看,喜歡加個關注