Spring AOP(面向切面程式設計)是什麼?
AOP 的全稱是“Aspect Oriented Programming”,即面向切面程式設計,它將業務邏輯的各個部分進行隔離,使開發人員在編寫業務邏輯時可以專心於核心業務,從而提高了開發效率。
AOP 採取橫向抽取機制,取代了傳統縱向繼承體系的重複性程式碼,其應用主要體現在事務處理、日誌管理、許可權控制、異常處理等方面。
目前最流行的 AOP 框架有兩個,分別為 Spring AOP 和 AspectJ。
Spring AOP 使用純 Java 實現,不需要專門的編譯過程和類載入器,在執行期間透過代理方式向目標類植入增強的程式碼。
AspectJ 是一個基於 Java 語言的 AOP 框架,從 Spring 2.0 開始,Spring AOP 引入了對 AspectJ 的支援。AspectJ 擴充套件了 Java 語言,提供了一個專門的編譯器,在編譯時提供橫向程式碼的植入。
為了更好地理解 AOP,就需要對 AOP 的相關術語有一些瞭解,這些專業術語主要包含 Joinpoint、Pointcut、Advice、Target、Weaving、Proxy 和 Aspect,它們的含義如下表所示。
名稱 | 說明 |
---|---|
Joinpoint(連線點) | 指那些被攔截到的點,在 Spring 中,可以被動態代理攔截目標類的方法。 |
Pointcut(切入點) | 指要對哪些 Joinpoint 進行攔截,即被攔截的連線點。 |
Advice(通知) | 指攔截到 Joinpoint 之後要做的事情,即對切入點增強的內容。 |
Target(目標) | 指代理的目標物件。 |
Weaving(植入) | 指把增強程式碼應用到目標上,生成代理物件的過程。 |
Proxy(代理) | 指生成的代理物件。 |
Aspect(切面) | 切入點和通知的結合。 |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2318/viewspace-2797929/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Spring AOP——Spring 中面向切面程式設計Spring程式設計
- Spring之AOP面向切面程式設計Spring程式設計
- 什麼是 AOP 面向切面?
- AOP(面向切面程式設計)程式設計
- AOP 面向切面程式設計程式設計
- AOP--面向切面程式設計程式設計
- Spring 面向切面程式設計AOP 詳細講解Spring程式設計
- 手寫Spring---AOP面向切面程式設計(4)Spring程式設計
- 手寫Spring---AOP面向切面程式設計(3)Spring程式設計
- Spring 面向切面AOPSpring
- 前端js面向切面程式設計(AOP)前端JS程式設計
- Spring Boot實戰系列(3)AOP面向切面程式設計Spring Boot程式設計
- 設計模式之面向切面程式設計AOP設計模式程式設計
- Day67 Spring AOP(面向切面程式設計) 和代理設計模式Spring程式設計設計模式
- Spring-AOP(面向切面)Spring
- 前端解讀面向切面程式設計(AOP)前端程式設計
- 01.AOP(AspectOrientatedProgramming面向切面程式設計)程式設計
- aop面向切面程式設計的實現程式設計
- Java中的面向切面程式設計(AOP)Java程式設計
- Spring框架系列(4) - 深入淺出Spring核心之面向切面程式設計(AOP)Spring框架程式設計
- 四、Spring-面向切面程式設計Spring程式設計
- Spring AOP:面向切面程式設計的核心概念與實際應用Spring程式設計
- Spring 面向方面程式設計 AOPSpring程式設計
- 面向切面程式設計 ( Aspect Oriented Programming with Spring )程式設計Spring
- Spring理論基礎-面向切面程式設計Spring程式設計
- JS實現AOP 面向切面程式設計 (裝飾者模式)JS程式設計模式
- 什麼是AOP程式設計?程式設計
- 從原始碼入手,一文帶你讀懂Spring AOP面向切面程式設計原始碼Spring程式設計
- 程式設計思想 面向切面程式設計程式設計
- 深入學習Spring框架(三)- AOP面向切面Spring框架
- Util應用框架基礎(三) - 面向切面程式設計(AspectCore AOP)框架程式設計
- .NET Core 實現動態代理做AOP(面向切面程式設計)程式設計
- Spring系列:基於Spring-AOP和Spring-Aspects實現AOP切面程式設計Spring程式設計
- React Native面向切面程式設計React Native程式設計
- Spring Boot中面向方面程式設計 (AOP)教程Spring Boot程式設計
- 面向切面的Spring(二) xml中定義aopSpringXML
- 基於SpringBoot AOP面向切面程式設計實現Redis分散式鎖Spring Boot程式設計Redis分散式
- Spring之切面程式設計Spring程式設計