上一週主要是針對Spring IoC 容器的概述,包括Spring IoC 依賴查找、依賴注入、依賴來源、配置元信息、容器、應用上下文以及Spring IoC 容器生命週期進行主要分析與概述
數據庫
接下來的部分進入Spring Bean 的基礎部分、我主要分析羅列了主要內容:定義Spring Bean、BeanDefinition 元信息、命名Spring Bean、Spring Bean 的別名、註冊Spring Bean、實例化Spring Bean、初始化Spring Bean、延遲初始化 Spring Bean、銷燬 Spring Bean、垃圾回收 Spring Bean。app
對定義Bean 的理解,什麼事BeanDefinition?
ide
那麼定義Spring Bean 從一下幾個方面進行深刻討論spa
首先第一個是什麼是BeanDefinition:BeanDefinition其實字面意思它就是Bean的一個定義線程
那麼在Spring Framework 中它是Bean 的配置元素的一個元信息接口,首先它有兩個方面的元素3d
第一個方面它是原配置信息或者配置元信息orm
第二個方面它是一個接口,主要包含如下幾個方面blog
其一是它的類的名稱,Bean的名稱其實這裏就是須要包含它的包名,就是它的所有名稱,以及它對應的類不惜是一個具體的實現類,接口
其二就是關於Bean的配置元信息,就是說元信息包括它的行爲,包含了做用域、自動綁定,自動綁定就是咱們前面所聊到的過的一個事情,就是說AutoWriting 這種模式,再來就是它的生命週期 。好比:初始化或者銷燬這樣的毀掉,那麼固然還有其它的一些定義方式;生命週期
其三一些關於Bean 和Bean 之間會有一些合做關係,咱們成爲合做者或者成爲依賴:好比:依賴注入,其實也就是把合做者或者說引用的Bean 注入到裏面來,固然依賴注入了不單單就是注入Bean。
其四還能夠注入其它的配置:好比:Bean 的屬性(Properties)配置,假設這個Bean正好是對應線程池或者數據庫鏈接池。這個時候它的Bean可能就會包含一些大小相關的屬性
總結
經過上述的維度,簡單討論了什麼事Bean的定義以及如何來定義Bean,接下來主要分析BeanDefinition相關的元信息詳細介紹一些案例的輸出