spring IOC 容器

spring IOC 容器 实际是一个ConcurrentMap名称factoryBeanObjectCache.   使用到的最重要的模式是工厂模式。

1. 定位资源(定位配置文件)

2. 加载(加载配置文件)

3. 注册(解析配置文件,并封装成BeanDefantion,只是bean的说明(bean的依赖关系等),bean 还未生成)

4. bean生成(DI依赖注入),初始化时间是:a. 在第一次调用Applicationcontext的getBean 方法时初始化 b.bean 配置了lazy-init方式时会自动注入完成(默认false),初始化spring启动时慢,但是程序执行时效率会高

  4.1 判断是不是单例,单例先看是不是已经存在,有先移除,没有则创建

  4.2 有没有相互注入的实例化(也要判断是不是单例的,单例的取出注入,非单例的实例化注入)

   Spring不生命scope的话,默认都是单例模式的。 spring使用jdk代理或者cglib的代理来实现bean的生产(代理后生成新的类),这样可以拿到所有控制权,更有利于后续做监听等aop切面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值