Spring Framework Core 之 IOC容器

在spring的容器里,最小單元是bean。spring的容器的作用就是管理這些bean。而spring采取的管理這些bean的策略就是IOC(Inversion of Control),又稱DI(依賴注入)。這些待管理的bean會以某種形式(java或者xml)定義自己的依賴關(guān)系,而容器在創(chuàng)建管理這些bean的時候進行依賴的注入。做依賴注入時容器其實就把實例化被依賴bean交給了依賴bean,故稱為控制的反轉(zhuǎn)。說了這些,大家可能還有點疑惑,這里的bean到底是什么呀?那我們就需要看下spring是怎么定義自己的了。

The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform.

這句話就在spring.io關(guān)于spring framework的介紹文檔第一句。簡單來說,就是spring致力于提供一個通用的編程模型給基于java的企業(yè)級應用。不管這個企業(yè)是什么類型業(yè)務的企業(yè)。spring需要自己去適應不同的業(yè)務場景。而且它還真做到了。這都歸功于上面的bean。小小的bean是spring對于業(yè)務的最佳抽象。它的適應性支撐著spring的項目越來越多。
在spring framework里,

org.springframework.beans 與 org.springframework.context

這兩個包就是IOC容器的基礎(chǔ)。其中,最基礎(chǔ)的接口是BeanFactory。而擴展時使用最多的是ApplicationContext。它們的簡單依賴類圖如下。


spring framework 核心類圖.jpg

經(jīng)驗老道的程序員一般都會建議你,如果你想創(chuàng)建一個有自己特色的bean容器,一定要使用ApplicationContext,而不是BeanFactory。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容