Spring面試題(一)

  1. 說說什麼是Spring?
    答:Spring是一個開源框架,目的是爲了簡化企業級應用的開發,讓開發者只需關心業務需求就好,Spring是一個IOC和AOP容器框架。

  2. 說說Spring的優點?
    答:Spring對代碼的污染低,屬於低侵入式設計。Spring提供了IOC技術,由IOC容器來管理對象的生命週期和對象間的關係,降低了對象之間的耦合度。Spring提供了AOP技術,以面向切面編程的思想,做到了代碼的複用和業務代碼和非業務代碼之間的解耦。Spring對於主流的應用框架提供了集成支持,這樣方便我們開箱即用。

  3. 說說什麼是IOC(控制反轉)?
    答:在傳統的開發模式中,對象的創建權力是由開發者自己把控和掌握的,而現在把這個權力交給了Spring容器,由Spring容器使用工廠模式來爲我們創建對象,同時對象的生命週期由Spring容器來管理,對象與對象之間實現了低耦合。

  4. 說說什麼是DI(依賴注入)?
    答:在依賴注入中,我們不用主動去創建對象,我們只需要使用配置文件或者其他方式來描述對象需要什麼屬性,對象依賴了哪些服務,對象應該怎麼創建,然後交給IOC容器,讓它去完成整個對象的創建過程。

  5. 說說SpringIOC有幾種注入方式?
    答:3種。構造器注入、setter方法注入、註解注入。

  6. 說說SpringIOC的優點?
    答:IOC讓相互協作的組件間保持鬆散的耦合,大大降低了應用的代碼量,IOC容器在加載服務時還支持懶漢式加載和餓漢式加載。

  7. Spring中有多少種IOC容器?
    答:BeanFactory和ApplicationContext兩種。

  8. 說說對BeanFactory的瞭解?
    答:BeanFactory就像一個包含bean集合的工廠類,它會在客戶端要求時實例化出bean。

  9. 說說對ApplicationContext的瞭解?
    答:ApplicationContext接口擴展了BeanFactory接口。它在BeanFactory的基礎上提供了更完整的框架功能,如繼承了MessageSource,支持國際化,以及統一的資源文件訪問方式,還提供了在監聽器中註冊bean的事件,可以同時加載多個配置文件,載入多個(有繼承關係)上下文 ,使得每一個上下文都專注於一個特定的層次。

  10. 說說BeanFactory和ApplicationContext的區別?

BeanFactory ApplicationContext
使用懶加載 使用即時加載
使用語法顯式提供資源對象 自己創建和管理資源對象
不支持國際化 支持國際化
不支持基於依賴的註解 支持基於依賴的註解
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章