国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Spring技術核心內幕 讀書筆記--IOC容器的實現小結

2019-11-11 07:54:23
字體:
來源:轉載
供稿:網友

SPRing技術核心內幕 讀書筆記 –IOC容器的實現小結

BeanDefinition的定位。對IOC容器來說,它為管理POJO之間的以來關系提供了幫助,但也要依據Spring的定義規則提供Bean定義信息。我們可以使用各種形式的Bean定義信息,其中比較熟悉和常用的是使用xml文件格式。在Bean定義方面,Spring為用戶提供了很大的靈活性。在初始化Ioc的過程中,首先需要定位到這些有效的bean定義信息,這里Spring使用Resource接口來統一這些Bean定義信息,而這個定位由ResourceLoader來完成。

容器的初始化。在使用上下文時,需要對它進行一個初始化的過程,完成初始化之后,這個容器才可以使用。容器的初始化入口是refresh方法(根據具體使用的applicationContext不同)。refresh調用BeanDefinition來完成bean信息的載入和注冊,但是不完成以來注入,除非配置了lazy-init的屬性。否則依賴注入在第一次getBean的時候調用注冊。

這里涉及到一個循環引用(Circular Reference)的問題。

如果A依賴B,并且B依賴A.但兩個類的方法沒有互相調用。 * 如果使用的是Constructor依賴,那么就會拋出Is there an unresolvable circular reference?的錯誤 * 如果使用是setter方法注入依賴,那么依賴注入是分開的,當需要的時候才會注入。就不會拋出來循環引用的異常。 * 如果是A和B之中的方法還有互相調用,雖然不會拋出來循環引用的異常,但是會拋出棧溢出的異常。


上一篇:PAT甲級1003

下一篇:1043. 輸出PATest(20)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鹿邑县| 贡觉县| 鹤山市| 泾源县| 宁安市| 辉县市| 隆回县| 枝江市| 福海县| 来宾市| 新乡县| 界首市| 临泽县| 龙陵县| 阳泉市| 遂宁市| 望江县| 威宁| 专栏| 黄冈市| 澄城县| 永年县| 康乐县| 平舆县| 阜阳市| 赫章县| 桐梓县| 定南县| 静宁县| 湄潭县| 澄江县| 凉城县| 凉城县| 那坡县| 黔江区| 弋阳县| 闸北区| 雅安市| 庆云县| 弥勒县| 呼伦贝尔市|