91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Spring框架IOC容器底層原理是什么

發布時間:2022-07-29 17:39:44 來源:億速云 閱讀:122 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“Spring框架IOC容器底層原理是什么”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Spring框架IOC容器底層原理是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

1、什么是IOC

IOC – Inverse of Control,控制反轉,將對象的創建權力反轉給Spring框架!

在java當中一個類想要使用另一個類的方法,就必須在這個類當中創建這個類的對象,那么可能會出現如下情況, 比如A類當中創建著B對象,B類當中有C對象,C類當中有A對象,這個如果一個類出了問題,那么可能會導致這個框架出現問題。 Spring 將創建對象的權利給了IOC,在IOC當中創建了ABC三個對象嗎,那么我們我們其他的類只需要調用集合, 大大的解決了程序耦合性的問題。

控制反轉(Inversion of Control,縮寫為IoC),是面向對象編程中的一種設計原則,可以用來減低計算機代碼之間的耦合度。

解決問題:使用IOC可以解決程序耦合性高的問題。

2、IOC容器的底層原理

IOC的實現,依賴于以下3門技術

① dom4j解析xml文檔;

② 工廠模式;

③ 采用反射設計模式創建對象

首先我們需要講一下什么是工廠模式

Spring框架IOC容器底層原理是什么

在當前情況之下A類想要調用B類就必須自己在自己的內部新建B類的對象,這樣的耦合度太高,那我們如何降低耦合度的呢?

Spring框架IOC容器底層原理是什么

創建一個工廠類,這樣就能夠使得A和B的耦合度降低到最小值

3、那么上邊提到的三種技術如何實現IOC的呢

第一步:xml配置文件,配置創建對象

<bean id="demo" class="com.qcby.service.Demo" />

第二步:創建工廠類(ioc的核心原理)

public class DemoFactory {
    //利用dom4j得到name所對應的value值
   public static Demo getDemo() throws Exception {
       //利用dom4j得到name所對應的value值
       String value="class路徑";
       //通過反射創建對象
       Class clazz = Class.forName(value);
       //返回并創建demo對象
       return (Demo) clazz.newInstance();
   }
}

4、IOC(接口)

1.IOC思想是基于IOC容器完成的,IOC的底層就是對象工廠

2.Spring里邊提供了IOC容器的實現的兩種方式

(1) BeanFactroy:IOC容器是Spring內部的使用接口,不提供給開發人員使用

Spring框架IOC容器底層原理是什么

BeanFactroy:加載配置文件的時候不會去創建對象,在使用對象的時候才會去創建對

(2)ApplicationContext:BeanFactory接口的子接口,提供了更多更強大的功能,一般由開發人員進行使用

Spring框架IOC容器底層原理是什么

讀到這里,這篇“Spring框架IOC容器底層原理是什么”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南涧| 崇左市| 利津县| 温泉县| 鸡泽县| 化德县| 东乌珠穆沁旗| 栖霞市| 宿松县| 库伦旗| 江达县| 城口县| 河北区| 罗田县| 渭源县| 鹤岗市| 井冈山市| 忻州市| 晋江市| 巴东县| 保山市| 图木舒克市| 长子县| 南阳市| 南安市| 建昌县| 平山县| 雷山县| 双牌县| 启东市| 浙江省| 锡林郭勒盟| 休宁县| 会理县| 宜黄县| 辛集市| 长沙市| 罗平县| 鄂尔多斯市| 腾冲县| 柳林县|