IOC 容器設計理念與核心註解

1.ioc 和 DI  需要解決最根本的問題是什麼?

答:最需要解決的問題是 bean 的循環依賴的問題

2.BeanFactory  和 applicationContext 的本質區別?

答:加載的時機不同,BeanFactory 是懶加載,applicationContext 是非懶加載的,可以指定爲懶加載,是對BeanFatory 的擴充   

3.什麼是控制反轉,什麼是依賴注入?

答:首先,依賴倒置,控制反轉,是把控制權交個Spring容器管理,降低了耦合性。ioc 思想最核心的地方在於,資源不由使用資源的雙方管理,而由不使用資源的第三方管理,這樣可以帶來很多好處,第一,資源集中管理,實現資源的可配置,和易管理,第二,降低了使用資源雙方的依賴程度,也就是我們說的耦合度。依賴注入,就是通過Spring容器進行注入。

4.配置Bean的作用域對象

答:

在不指定@Scope 的情況下,所有bean都是單實例餓漢加載(容器啓動實力就創建好了)

Bean的懶加載@Lazy (主要針對單實例的Bean 容器啓動的時候,不創建對象,在對一次使用的時候纔會創建對象)

5.@Conditional 進行條件判斷等。

6.往IOC 添加組建的方式有哪幾種?

答:

@bean

@CompentScan + @Controller + @Service + @ comment + @ Repository  (自己寫時使用)

@Import  (導入第三方組建時可使用,管理第三方bean的)

ImportBeanDefinitionRegister  實現接口

FactoryBean  (通過實現接口來實現註冊組件)

7.Bean的生命週期?

由IOC來控制。

針對單實例bean的話,容器啓動的時候,bean的對象就創建了,而且容器銷燬的時候,也會調用bean的銷燬方法

針對多實例的時候,bean是不會被創建的而是在獲取bean的時候被創建,而且bean的銷燬不受IOC容器的管理。

8.PropertSource 的使用?

答:給屬性賦值

9.@Autowired 根據什麼裝配?

答:根據名稱裝配

10.Profile 使用場景?

答:配置本地生產使用環境。

 

 

 

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