SpringIOC

SpringIOC

1.定义:

	IOC,控制反转,Spring的核心,在传统应用程序中我们获取一个类需要去new它,而用了IOC之后,IOC帮我们
创建和查找依赖对象,我们只需要被动的去接收就行。

2.SpringIOC加载过程:

	xml配置文件或者注解配置通过ApplicationContext进行读取(BeanDefinitionReader)、扫描(BeanDefinitionScanner)
、注册(BeanDefinitionRegisty)最终形成一个个BeanDefinition,还可以通过一些后置处理器BeanDefinitionPostProcessor
来修改,最后将BeanDefiniton存进一个Map中,然后通过BeanFactory生产。如下流程图:

在这里插入图片描述

3.Bean的生命周期

	Bean的生命周期主要有以下几个环节:
  1. 实例化Bean(反射)
  2. 设置属性(@Value、@Autowired)
  3. 初始化initMethod方法、销毁destory方法
    主要是以上的几个环节,不过在调用初始化方法是还可能会调用一堆aware接口,如BeanNameAware、BeanClassLoaderAware、BeanFactoryAware等等,也可能会在以上没个环节的前后调用后置处理器(PostProcessor)加入一写东西。
    在这里插入图片描述

4.BeanFactory与ApplicationContext区别与相同点:

1. BeanFactory与ApplicationContext都能生产Bean,ApplicationContext继承BeanFactory接口;
2. BeanFactory就像一个生产机器一样只生产Bean;
3. ApplicationContext能通过读取xml配置文件或者注解配置,注册其中的bean并且能配置bean的一些属
   性如@Lazy、@Scope,再让BeanFactor生产;
4. ApplicationContext还有国际化(MessageSource)、访问资源,如URL和文件(ResourceLoader)、
   消息发送、aop等。
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值