當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
请说明一下Spring中BeanFactory和ApplicationContext的区别是什么?
生活随笔
收集整理的這篇文章主要介紹了
请说明一下Spring中BeanFactory和ApplicationContext的区别是什么?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
請說明一下Spring中BeanFactory和ApplicationContext的區別是什么?
BeanFactory:
是spring中比較原始,比較古老的Factory。因為比較古老,所以BeanFactory無法支持spring插件。例如:AOP、web應用等功能。
AppliactionContext:
是BeanFactory的子類,基本上代替了BeanFactory的工作。以一種更面向框架的工作方式以及對上下文進行分層和實現繼承,并在這個基礎上對功能進行擴展:
①MessageSource,提供國際化的消息訪問。
②資源訪問:URL和文件等。
③事件傳遞。
④Bean的自動裝配。
⑤各種不同的應用層的Context實現。
區別:
①如果使用ApplicationContext,如果配置的Bean是Singleton單例,那么不管你有沒有或想不想用它,它都會被實例化。好處是可以預先加載,壞處是浪費內存。
②BeanFactory,當使用BeanFactory實例化對象時,配置的Bean不會被馬上實例化(懶加載),而是等到你使用bean的時候才會被實例化。好處是節約內存,壞處是速度比較慢。多用于移動設備的開發。
③沒有特殊要求的情況下,應該使用ApplicationContext完成。因為BeanFactory能完成的事情,ApplicationContext都能完成,并且提供了更加豐富的功能
總結
以上是生活随笔為你收集整理的请说明一下Spring中BeanFactory和ApplicationContext的区别是什么?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如果你要实现IOC,请简单描述一下实现步
- 下一篇: openresty获取nginx 请求方