spring揭祕

1.springIoc   IOC service provider三種注入方式  綁定依賴的方式  參照 spring揭祕 30頁往前

2.spring 的IOC容器 beanfactory對象註冊,依賴綁定              ,參照spring揭祕 35頁

3.spring  bean的幾種加載屬性   40頁,可以結合前面的通過xml  properties註冊對象 綁定依賴,可以用xml注入對象,或對象包含對象,單元測試

4.除了bean  還有 map  list   set 。。  40-49頁   spring揭祕

5.bean的scope    對象生命週期管理

singleton
prototype
request
session
global session

    50-60頁

6、IOC容器的兩個階段 容器啓動,bean實例化 ,使用ObjectBeanFactory實現每次返回的都是新創建的對象,方法替換  70頁

7、插手容器啓動  ,容器加載完,bean實例化前做一些操作。 74頁 

PropertyPlaceholderConfigurer   77頁
PropertyOverrideConfigurer
CustomEditorConfigurer 78頁      
<bean id="dateFoo" class="...Date
<property name="date">
<value>2007/10/6</value>
</property>
</bean>
將字符串2007/10/6加載解析 ,裝配時,根據自定義的
PropertyEditor,轉成date類型,
通過CustomEditorConfigurer將剛實現的DatePro
pertyEditor註冊到容器,以告知容器按照DatePropertyEditor的形式進行Stringjava.util.Date類型的轉換工作
如果使用的是BeanFactory 需要手動編碼將CustomEditorConfigurer應用到容器,如果是ApplicationContext不需要

參考 https://www.cnblogs.com/piepie/p/9061076.html

https://www.cnblogs.com/sishang/p/6588542.html

 

8.加載 分析 裝配BeanDefinition,容器初始化,經過干預後,進入bean初始化階段80頁

beanFactory容器,加載A,會先加載A的依賴對象,ApplicationContext在初始化容器完成時立刻調用實例化方法getBean(),所以我們拿到applicationContext引用時,是已經全部實例化的。第一次getBean觸發bean實例化一系列活動,第二次從容器緩存獲取已經實例化的bean,prototype類型bean除外。

 

9.容器根據Beandefinition+策略+bean類型就可實例化對象,但是返回的是BeanWrapper實例
BeanWrapper作用是對bean進行包裹,比如設置或者獲取屬性,所以第一步結束後返回BeanWrapper實例,就是爲了第二
部設置對象屬性   

CustomEditorConfigurer 將各種PropertyEditor註冊到容器,就是給BeanWrapper用的 。BeanWrapper設置對象屬性後,檢查Aware接口並設置相關依賴到bean實例

BeanPostProcessor(bean實例化階段)區別BeanFactoryPostProcessor(在容器啓動階段使用)

81-83頁

10.BeanPostProcessor  自定義BeanPostProcessor   spring揭祕 86頁

https://www.cnblogs.com/moxiaotao/p/9346123.html

11.InitializingBean的使用88頁

12.DisposableBean  90頁

13.ApplicationContext  92頁

14.Spring中的Resource : ClassPathResource、FileSystemResource。。93頁

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章