javascript
Spring AOP里面的几个名词的概念:
(1)連接點(Join point):指程序運行過程中所執行的方法。在Spring AOP中,一個連接點總代表一個方法的執行。?
(2)切面(Aspect):被抽取出來的公共模塊,可以用來會橫切多個對象。Aspect切面可以看成 Pointcut切點 和 Advice通知 的結合,一個切面可以由多個切點和通知組成。
在Spring AOP中,切面可以在類上使用?@AspectJ?注解來實現。
(3)切點(Pointcut):切點用于定義?要對哪些Join point進行攔截。
切點分為execution方式和annotation方式。execution方式可以用路徑表達式指定對哪些方法攔截,比如指定攔截add*、search*。annotation方式可以指定被哪些注解修飾的代碼進行攔截。
(4)通知(Advice):指要在連接點(Join Point)上執行的動作,即增強的邏輯,比如權限校驗和、日志記錄等。通知有各種類型,包括Around、Before、After、After returning、After throwing。
(5)目標對象(Target):包含連接點的對象,也稱作被通知(Advice)的對象。?由于Spring AOP是通過動態代理實現的,所以這個對象永遠是一個代理對象。
(6)織入(Weaving):通過動態代理,在目標對象(Target)的方法(即連接點Join point)中執行增強邏輯(Advice)的過程。
(7)引入(Introduction):添加額外的方法或者字段到被通知的類。Spring允許引入新的接口(以及對應的實現)到任何被代理的對象。例如,你可以使用一個引入來使bean實現?IsModified?接口,以便簡化緩存機制。
幾個概念的關系圖可以參考下圖:?
網上有張非常形象的圖,描述了各個概念所處的場景和作用,貼在這里供大家理解:
?
總結
以上是生活随笔為你收集整理的Spring AOP里面的几个名词的概念:的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring AOP中的动态代理主要有两
- 下一篇: Spring中bean的作用域