1. 程式人生 > >Spring基礎(一)——AOP&IoC

Spring基礎(一)——AOP&IoC

一、Spring的含義:

Spring是一個開源的輕量級JavaEE企業級開發應用框架,其目的是用於簡化企業級應用程式的開發。它可以幫助程式建立物件並管理這些物件之間的依賴關係,從而提高開發效率,且符合現有程式的低耦合、高內聚的特點。 

在這裡補充一下耦合和解耦的概念:

1.耦就是合:指類與類之間的依賴程度。(耦合性好則說明兩個類之間的依賴程度較為緊密)

2.解耦:就是在把兩者之間的依賴關係疏鬆一下,以免在更改一個類的時候影響另一個類。

例如:模組一依賴於模組二,二變了一就要一起變就是耦合,二變了一不用變就叫解耦。

二、Spring中有兩個核心模組:

1.Aop(Aspect Oriented Programming):面向切面程式設計。大家都知道OOP是面向物件程式設計,它是對物件的屬性和行為進行抽象封裝,但是AOP是對其某個步驟和階段進行切面的提取,也就是說,如果幾個或者更多的邏輯過程中重複的操作行為,AOP就可以將其提取出現用動態代理進行統一維護。

2.IoC(Inversion of Control):控制反轉。控制反轉是Spring容器的核心,AOP、宣告事務等功能都是在此基礎上完成的,所謂IoC,就是通過容器來控制業務和物件之間的依賴關係,而非用程式碼直接控制。也就是說,所有的類都需要在Spring中登記,告訴它你是什麼,你需要什麼。那麼在程式執行到適當是時候,就會把你要的東西主動給你,也會把你給需要你的東西,是一點是通過DI(Dependency Injection)依賴注入來實現的。所有的類的建立、銷燬都由Spring來控制,所以這叫控制反轉。