IOC和AOP是Spring中兩個非常核心的概念。

2021-10-11 17:44:39 字數 734 閱讀 2609

一、ioc

ioc是控制反轉,也可以稱為依賴倒置。

所謂的依賴,就是在程式中,a要呼叫b的方法,那麼a依賴於b。理解倒置之前,首先理解不倒置,不倒置就是a要依賴b,那麼必須要有b,不倒置就是a要主動獲取b的例項 b b=new b(),然後就可以使用了。倒置就是你不需要主動獲取b,而是由其他人把b主動送上門來。舉個例子,如果你想喝水,那麼必須去小賣部去買,但是呢,小賣部離家很遠,去買的話需要騎車等等,去了之後還不知道小賣部有沒有你想要的那種水,這個問題也就複雜了。但是,小賣部有送貨上門的服務,你只需要給小賣部說一聲你要的是哪種水,那麼會由配送人員直接給你送貨上門,這樣問題就非常簡單了。

spring中的ioc的原理就是:動態**。

二、aop

aop是面向切面的程式設計,它的目標就是分離關注點,什麼是關注點呢?關注點就是你要做的事情。舉個例子,假如乙個公子哥,每天的事情除了吃就是玩,其他的事情不想管,但是它每天睡覺前得**服,起床後得穿衣服,吃飯等等,這就是它的關注點,那怎麼辦呢?這就需要別人來幫他完成它的事情,那麼他就會僱傭一些僕人,僕人a給他穿衣服,僕人b給他把飯端上來等等,然後它吃了飯就出去玩,回來了,僕人再次完成他們的任務。

aop的好處就是你只需完成你想做的事情,其他的事情由別人幫你完成,每個人各司其職,靈活組合,達到一種可配置的、可插拔的程式結構。aop的最大用途就是提供了事務管理的功能,它的關注點就是事務管理,只需要訪問資料庫,不想管事務,所以,spring在訪問資料庫之前,自動開啟事務,當你訪問資料庫結束的時候,自動結束事務和回滾事務。

什麼是Spring中的IOC和Aop

什麼是spring的ioc,aop ioc的基本概念是 不建立物件,但是描述建立他們的方式。在 中不直接與物件和服務進行連線,但在配置檔案中描述哪乙個元件需要哪一項服務。spring容器負責將這些聯絡在一起。也就是說,spring的ioc負責管理各種物件的建立,清除以及它們之間的聯絡。aop是指面向...

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就是典型的 模式的體現。在傳統的程式設計中,當呼叫者需...