您的位置:首页 > 移动开发

BeanFactory 和ApplicationContext(Bean工厂和应用上下文)

2015-09-12 15:45 417 查看
Bean工厂(BeanFactory接口),提供了基础的依赖注入支持。应用上下文(ApplicationContext接口),建立在Bean工厂基础之上,提供了系统架构服务。ApplicationContext提供了更多功能:1、提供了文本信息解析工具,包括对国际化(I18N)的支持。2、提供了载入文件资源的通用方法,如载入图片。3、可以向注册为监听器的Bean发送事件。ApplicationContext和BeanFacotry相比,提供了更多的扩展功能,但其主要区别在于后者是延迟加载,
如果Bean的某一个属性没有注入,BeanFacotry加载后,直至第一次使用调用getBean方法才会抛出异常;
而ApplicationContext则在初始化自身是检验,这样有利于检查所依赖属性是否注入;
所以通常情况下我们选择使用ApplicationContext.
BeanFactory基本的工厂
解析,管理,实例化所有容器内的bean的接口,spring中所有解析配置文件的类都直接或者间接实现该接口
ApplicationContext接口implements BeanFactory
创建对象的特点:
BeanFactory    在解析配置文件时并不会初始化对象,只有在使用对象时(getBean())才会对该对象进行初始化
ApplicationContext    在解析配置文件时对配置文件中的所有对象都初始化了,getBean()方法只是获取对象的过程

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: