当前位置: 首页 > 面试题库 >

请说明一下Spring中BeanFactory和ApplicationContext的区别是什么?

许高峻
2023-03-14
本文向大家介绍请说明一下Spring中BeanFactory和ApplicationContext的区别是什么?相关面试题,主要包含被问及请说明一下Spring中BeanFactory和ApplicationContext的区别是什么?时的应答技巧和注意事项,需要的朋友参考一下

考察点:spring框架

参考回答:

概念:

BeanFactory: BeanFactory是spring中比较原始,比较古老的Factory。因为比较古老,所以BeanFactory无法支持spring插件,例如:AOP、Web应用等功能

ApplicationContext ApplicationContext是BeanFactory的子类,因为古老的BeanFactory无法满足不断更新的spring的需求,于是ApplicationContext就基本上代替了BeanFactory的工作,以一种更面向框架的工作方式以及对上下文进行分层和实现继承,并在这个基础上对功能进行扩展: <1>MessageSource, 提供国际化的消息访问 <2>资源访问(如URL和文件) <3>事件传递 <4>Bean的自动装配 <5>各种不同应用层的Context实现

区别:

<1>如果使用ApplicationContext,如果配置的bean是singleton,那么不管你有没有或想不想用它,它都会被实例化。好处是可以预先加载,坏处是浪费内存。 <2>BeanFactory,当使用BeanFactory实例化对象时,配置的bean不会马上被实例化,而是等到你使用该bean的时候(getBean)才会被实例化。好处是节约内存,坏处是速度比较慢。多用于移动设备的开发。 <3>没有特殊要求的情况下,应该使用ApplicationContext完成。因为BeanFactory能完成的事情,ApplicationContext都能完成,并且提供了更多接近现在开发的功能。

 类似资料:
  • 本文向大家介绍请说明一下springmvc和spring-boot区别是什么?相关面试题,主要包含被问及请说明一下springmvc和spring-boot区别是什么?时的应答技巧和注意事项,需要的朋友参考一下 考察点:spring 参考回答: 总的来说,Spring 就像一个大家族,有众多衍生产品例如 Boot,Security,JPA等等。但他们的基础都是Spring 的 IOC 和AOP,I

  • 本文向大家介绍请说明一下@Controller和@RestController的区别是什么?相关面试题,主要包含被问及请说明一下@Controller和@RestController的区别是什么?时的应答技巧和注意事项,需要的朋友参考一下 考察点:spring 参考回答: @RestController注解相当于@ResponseBody + @Controller合在一起的作用

  • 本文向大家介绍Spring中BeanFactory和ApplicationContext的作用和区别(推荐),包括了Spring中BeanFactory和ApplicationContext的作用和区别(推荐)的使用技巧和注意事项,需要的朋友参考一下 作用: 1.BeanFactory负责读取bean配置文档,管理bean的加载,实例化,维护bean之间的依赖关系,负责bean的声明周期。2.Ap

  • 本文向大家介绍请说明一下sleep() 和 wait() 有什么区别?相关面试题,主要包含被问及请说明一下sleep() 和 wait() 有什么区别?时的应答技巧和注意事项,需要的朋友参考一下 考察点:线程 sleep是线程类(Thread)的方法,导致此线程暂停执行指定时间,把执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。调用sleep不会释放对象锁。 wait是Object类的

  • 主要内容:1.BeanFactory 与 ApplicationContext 的联系,2.BeanFactory 与 ApplicationContext 的区别1.BeanFactory 与 ApplicationContext 的联系 可以看出ApplicationContext 间接继承了 BeanFactory BeanFactory 接口,典型功能有: getBean ApplicationContext 接口,是 BeanFactory 的子接口。它扩展了 BeanFactory

  • 本文向大家介绍请简要说明一下JAVA中cyclicbarrier和countdownlatch的区别分别是什么?相关面试题,主要包含被问及请简要说明一下JAVA中cyclicbarrier和countdownlatch的区别分别是什么?时的应答技巧和注意事项,需要的朋友参考一下 考察点:线程 CountDownLatch和CyclicBarrier都能够实现线程之间的等待,只不过它们侧重点不同: