最近正在重讀《spring in action》一書,把里面的知識點再回顧一遍。
beanfactory是一個頂層接口,是最基本的bean容器。spring使用beanfactory來生成,配置和管理bean。
applicationcontext是beanfactory的子類,它比beanfactory提供了更加豐富的功能。
平時常用的bean容器還有3個,它們都是applicationcontext
的子類,如圖所示。classpathxmlapplicationcontext
主要用在在類路徑加載xml文件的場景,filesystemxmlapplicationcontext
主要用在在文件系統加載xml文件的場景,xmlwebapplicationcontext
主要用在在web中加載xml文件的場景。
beanfactory和applicationcontext在bean加載方面有什么不同呢?
beanfactory是延遲加載。beanfactory初始化完成后,并不加載任何bean,只有在第一次獲取bean時,beanfactory才會加載該bean。而applicationcontext會在啟動后主動加載好單例bean,這樣,從applicationcontext中獲取bean時效率更高。
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對服務器之家的支持。如果你想了解更多相關內容請查看下面相關鏈接
原文鏈接:https://blog.csdn.net/li_canhui/article/details/85191943