Spring的ioc和aop理解

2021-09-27 00:18:23 字數 879 閱讀 9829

一、ioc,控制反轉

這個指的就是我們獲取物件的方式進行反轉了,改變了。在使用spring之前是需要手動new出來的,是我們主動獲取的。使用spring之後,是將這個獲取的過程交給spring來管理,我們只需要告訴spring你需要什麼就行了,它就會把東西給你。比如:在沒有電商的時候,我們去上街買東西,需要考慮到這東西有沒有,價錢多少,怎麼搬回來,去有多遠……等等無數個和主要的業務邏輯(買東西)無關的問題。這樣就會擾亂主業務邏輯。當我們有了電商平台後,買東西時只需要兩步。註冊賬號(裝載bean),告訴電商你要的東西名字(通過名字獲取bean),然後就可以在門口收到東西了。這就是ioc。

二、aop,面向切面

在談這個之前需要了解幾個詞:切面,切入點,織入,目標物件,通知。

我先解釋下名字的意思,再講故事。

切面:就是你要準備增強的那些方法。

切入點:就是具體織入的方法,定義了地點

織入:動詞,就是將切面織入的過層

目標物件:被增強的類

通知:就是什麼時候增強,定義了時間

好了,了解清楚上面的幾個詞的意思後,再聽故事就容易多了。

aop的功能就是用來增強,在執行主業務的通知也順帶執行其他業務。如:老李上街辦點事兒,走啊走,走到了老王家門前(切入點),老王看見老李問:去哪啊!

老李:上街辦點事兒(目標類)

老王:那幫我順便把這封信投到郵筒裡吧。(切面),等到10點的時候郵局開門了去櫃檯投。(通知)

老李:好嘞。然後老李接過信。(織入)

老李繼續走啊走,繼續上街辦事(增強後的目標類)。辦完事後老李回家了。

以上就是aop。aop一般用來處理許可權控制,日誌記錄,載入事務等非主要業務邏輯的事情。底層是採用cglib和jdk的動態**實現的

Spring的IOC和AOP原理

對spring的理解 spring是乙個輕型容器,其核心是bean工廠,用以構造我們所需的model。ioc 依賴注入,又叫控制反轉。利用了工廠模式 ioc中將物件交給容器管理,你只需要在spring配置檔案中配置對應的bean以及相關的屬性即可,讓spring容器來生成類的例項物件以及管理物件,當...

Spring中IOC和AOP學習

spring中最重要的就是ioc和aop ioc也稱控制反轉,其實是和依賴注入的含義是一樣的 通常是以下兩種 1.設值傳入 set注入 一般是在spring配置的xml中書寫 注意一般是設定類的property的name和ref name springaction class com.bless.s...

Spring中IOC和AOP詳解

我們是在使用spring框架的過程中,其實就是為了使用ioc容器 依賴注入,和aop 面向切面程式設計,這兩個是spring的靈魂。主要用到的設計模式有工廠模式和 模式。ioc就是典型的工廠模式,通過sessionfactory去注入例項。aop就是典型的 模式的體現。在傳統的程式設計中,當呼叫者需...