[Spring之AOP]
前言:
最近在學習Sping,在通過專案中來看,自己清晰了少啊,感覺自己需要學習的東西還很多啊!今天,來介紹一下AOP,下面開始進入我們們的正題.
核心:
什麼是AOP:
AOP為Aspect Oriented Programming的縮寫,意為:面向切面程式設計,通過預編譯方式和執行期動態代理實現程式功能的統一維護的一種技術.AOP是OOP(物件導向程式設計)的延續,是軟體開發中的一個熱點,也是Spring框架中的一個重要內容,是函數語言程式設計的一種衍生範型.
Spring AOP使用純Java實現,不需要專門的編譯過程和類載入器,在執行期通過代理方式向目標類織入增強程式碼.
AspectJ是一個基於Java語言的AOP框架,Spring2.0開始,Spring AOP引入對Aspect的支援,AspectJ擴充套件了Java語言,提供了一個專門的編譯器,在編譯時提供橫向程式碼的織入.AOP實現原理
- aop底層將採用代理機制進行實現。
- 介面 + 實現類 :spring採用 jdk 的動態代理Proxy。
- 實現類:spring 採用 cglib位元組碼增強。
經典應用
經典應用:事務管理、效能監視、安全檢查、快取 、日誌等
AOP術語
1.target:目標類,需要被代理的類。例如:UserService
2.Joinpoint(連線點):所謂連線點是指那些可能被攔截到的方法。例如:所有的方法
3.PointCut 切入點:已經被增強的連線點。例如:addUser()
4.advice 通知/增強,增強程式碼。例如:after、before
5. Weaving(織入):是指把增強advice應用到目標物件target來建立新的代理物件proxy的過程.
6.proxy 代理類
7. Aspect(切面): 是切入點pointcut和通知advice的結合
一個線是一個特殊的面。
一個切入點和一個通知,組成成一個特殊的面。
優點:
利用AOP可以對業務邏輯的各個部分進行隔離,從而使得業務邏輯各部分之間的耦合度降低,提高程式的可重用性,同時提高了開發的效率。
AOP採取橫向抽取機制,取代了傳統縱向繼承體系重複性程式碼
總結:
先學習了點理論,把理論應用於實踐,不斷成長!
相關文章
- 死磕Spring之AOP篇 - Spring AOP總覽Spring
- Spring 3.0 AOP 之 AOP 術語 (一)Spring
- Spring之AOP實現Spring
- Spring之Aop練習Spring
- (002)Spring 之 AOPSpring
- 死磕Spring之AOP篇 - Spring AOP常見面試題Spring面試題
- 死磕Spring之AOP篇 - Spring AOP自動代理(一)入口Spring
- Spring Boot之IOC&AOPSpring Boot
- Spring框架系列之AOP思想Spring框架
- Spring AOP之原始碼分析Spring原始碼
- Spring核心系列之AOP(一)Spring
- Spring核心系列之AOP(二)Spring
- 死磕Spring之AOP篇 - Spring AOP註解驅動與XML配置SpringXML
- 死磕Spring之AOP篇 - Spring AOP自動代理(三)建立代理物件Spring物件
- Spring框架系列(10) - Spring AOP實現原理詳解之AOP代理的建立Spring框架
- Spring-AOP之工作實踐(二)Spring
- Spring之AOP面向切面程式設計Spring程式設計
- 死磕Spring之AOP篇 - Spring AOP兩種代理物件的攔截處理Spring物件
- Spring框架系列(9) - Spring AOP實現原理詳解之AOP切面的實現Spring框架
- Spring AOPSpring
- spring AOPSpring
- [Spring]AOPSpring
- 死磕Spring之AOP篇 - Spring 事務詳解Spring
- spring之AOP的概念及簡單案例Spring
- Spring系列之AOP基本主要類概述Spring
- 徹底征服 Spring AOP 之 理論篇Spring
- 死磕Spring之AOP篇 - Spring AOP自動代理(二)篩選合適的通知器Spring
- Spring AOP APISSpringAPI
- Spring 的 AOPSpring
- spring-aopSpring
- Spring AOP IOCSpring
- Spring的AOPSpring
- Spring(四):AOPSpring
- Spring AOP (上)Spring
- Spring系列之aAOP AOP是什麼?+xml方式實現aop+註解方式實現aopSpringXML
- Spring原始碼分析之AOP從解析到呼叫Spring原始碼
- spring之AOP基本概念和配置詳解Spring
- Spring Boot整合Spring AopSpring Boot