1. 程式人生 > >Spring入門知識 ———— 初步認識Spring的AOP

Spring入門知識 ———— 初步認識Spring的AOP

一、引言

IOC小編就花了13個章節整體的講了一下,中間可能某些知識點會遺漏,請小夥伴請諒解一下。

今天學習Spring另外一個核心:面向切面程式設計(AOP)

AOP內容不多,大概就幾章就搞定了。

對了對了,小編最近特價秒殺了一本書,分享給你們一段話。

追逐夢想的路上,華麗的跌倒,總勝過無所謂的徘徊。

你應該始終相信努力的意義。

因為未來的那個你,一定會感謝現在拼命努力的自己。

二、AOP是什麼

AOP底層實現原理:JAVA動態代理

AOP面向切面程式設計,是一種新的方法論,是對傳統OOP(面向物件程式設計)的補充。

AOP的主要程式設計物件是切面(Aspect)。PS:你們可以理解為,有一個類叫TestAspect,用註解的形式標識這個類是切面(Aspect),然後在這個類裡面進行程式設計,寫程式碼,這樣理解了吧~~

在應用AOP程式設計時,還是需要定義公共的方法,但是可以明確指定這個功能以什麼方式應用,並且不必修改受影響的類,這樣以來橫切關注點就被模組化到特殊的物件裡面了。PS:定義好一個方法,然後我們可以指定這個方法,應用到具體某一個類某一個方法上。

這樣使用AOP的好處是什麼?

每個事物邏輯位於一個位置,程式碼不分散,便於維護和升級。業務模組更加簡潔,只包含核心業務程式碼。

三、關於AOP術語(重點)

在這裡也說下關於AOP的專業術語,別面試的時候聽不懂。

切面(Aspect):橫切的關注點,被模組化的特殊物件。

通知(Advuce):切面必須完成的工作。

目標(Target):被通知的物件。

代理(Proxy):向目標物件應用通知之後建立的物件。

連線點(Joinpoint):程式執行的某個特定位置,如類某一個方法呼叫前、呼叫後、方法丟擲異常等。

切點(Pointcut):每個類都擁有多個連線點,AOP通過切點定位到特定的連線點。比如連線點相當於資料庫中的記錄,切點相當於查詢的條件。

小編知道,很多小夥伴,看完了對AOP還是一頭霧水,沒關係,跟著小編往下看。