怎样描述BeanFactory与ApplicationContext的关系?

BeanFactory是Spring的早期接口,称为Spring的Bean工厂,ApplicationContext是后期更高级接口,称之为Spring 容器;

ApplicationContext在BeanFactory基础上对功能进行了扩展,例如:监听功能、国际化功能等。BeanFactory的API更偏向底层,ApplicationContext的API大多数是对这些底层API的封装;

Bean创建的主要逻辑和功能都被封装在BeanFactory中,ApplicationContext不仅继承了BeanFactory,而且

ApplicationContext内部还维护着BeanFactory的引用,所以,ApplicationContext与BeanFactory既有继承关系,又有融合关系。

Bean的初始化时机不同,原始BeanFactory是在首次调用getBean时才进行Bean的创建,而ApplicationContext则是配置文件加载,容器一创建就将Bean都实例化并初始化好。

ApplicationContext除了继承了BeanFactory外,还继承了ApplicationEventPublisher(事件发布器)、ResouresPatternResolver(资源解析器)、MessageSource(消息资源)等。但是ApplicationContext的核心功能还是BeanFactory。

BeanFactory与ApplicationContext的关系图如下:

怎样描述BeanFactory与ApplicationContext的关系?

applicationContext内部维护着beanFactory的引用,在学习过程中会查看beanFactory内部维护的属性,断点查看如下图示内容的。

怎样描述BeanFactory与ApplicationContext的关系?

验证BeanFactory和ApplicationContext对Bean的初始化时机,在UserDaoImpl的无参构造内打印一句话,验证构造方法的执行时机。

public class UserDaoImpl implements UserDao { public UserDaoImpl() { System.out.println(“UserDaoImpl创建了…”); } }

断点观察,BeanFactory方式时,当调用getBean方法时才会把需要的Bean实例创建,即延迟加载;而 ApplicationContext是加载配置文件,容器创建时就将所有的Bean实例都创建好了,存储到一个单例池中,当调用getBean时直接从单例池中获取Bean实例返回。

免责声明:文章内容来自互联网,本站仅作为分享,不对其真实性负责,如有侵权等情况,请与本站联系删除。
转载请注明出处:怎样描述BeanFactory与ApplicationContext的关系? https://www.dachanpin.com/a/cyfx/11048.html

(0)
上一篇 2023-05-12 02:46:05
下一篇 2023-05-12 02:47:15

相关推荐

  • 如何为创业失败者“兜好底”?

      有创业意愿的年轻人越来越多,是一件好事,但并非有创业意愿的大学生最后一定要选择创业。创业应该是今后职业选择的一个备选项,不能是唯一选项,更不宜把创业和就业对立起来。从目前来看,大学生选择创业仍然是小概率事件,有可能出现一次创业不成功,进行二次、三次继续创业,甚至跨界创业的现象。从创业者角度说,应该更从容地看待创业,改变思维定式,如果创业失败的经历有助于就…

    创业分享 2023-05-20
    78
  • 劲胜智能:强平引发承诺违约 监事王琼收创业板监管函

    劲胜智能:强平引发承诺违约 监事王琼收创业板监管函 分享到 关注中金在线: 扫描二维码 关注√ 中金在线微信 在线咨询: 扫描或点击关注中金在线客服   劲胜智能11月1日早间公告,公司监事收到创业板管理部监管函。监管函显示,公司现任监事王琼,历任董事、副总经理、董事会秘书,在公司首发招股说明书中承诺:“在本人任职期间,每年转让通过新余市嘉众实业投资有限公司…

    2023-05-14
    79
  • 创业没成咋办?

    原标题:创业没成 咋办? “大众创业,万众创新”的号召掀起了中国的新一轮创业热潮。伴随着近年来留学队伍的日益壮大,海外人才回国创业渐成趋势。接受过高等教育、拥有海外见识、身附“精英”标签的海归看似在创业上有更大的胜算,但实际上创业成功率并不如想象的高。 据统计:49.1%的海归创业者曾有失败的经历,3年内开始盈利的企业仅有37%。那么,如果海归创业失败,该如…

    创业分享 2023-05-30
    115
  • 创业是更加积极的就业

    从创业项目中人员变化的情况来看,人员比较稳定的占60.7%,人员呈增长趋势的占12.3%,人员数量呈下降趋势的仅占2.0%。从不同成立时间和人员规模的项目来看,数量比较稳定的比重都在75%左右,且增长比重高于下降比重,表明创业吸纳就业的势头总体向好。 对于企业未来的发展,调查对象选择比较乐观和非常乐观的比重占到了64.3%。其中留学归国人员、在校学生对于未来…

    创业分享 2023-06-03
    222
  • 创业者何时建立董事会,怎么引入董事会成员,如何平衡董事会内的

    在D轮融资中,公司可能会引入一部分战略投资或潜在的LP资金,它们可能会要求获得董事会观察员席位而非正式董事会席位。尽管如此,董事会观察员席位仍然具有与正式席位类似的重要性,需要谨慎的引入。 如果天使投资人要求设立董事会,而创始人没有足够的制衡能力,那么可以建立一个3人董事会,所有的3个席位都由普通股制定,并且让天使投资人占一个席位,不过应该加上时间和事件的条…

    2023-05-13
    142

发表回复

登录后才能评论

联系我们

在线咨询: QQ交谈

邮件:362039258@qq.com

工作时间:周一至周五,9:30-16:30,节假日休息