spring源码
spring 准备阶段做了什么? 1设置容器启动时间 * 2设置标志位 * 3获取环境对象 验证属性资源 * 4存储预刷新监听器和 事件的集合对象




进入obtainFreshBeanFactory




设置beanFactory 是否允许覆盖 与否允许bean之间存在循环依赖

创建beanFactory 往里面设置xml中的属性值


初始化beanFactory 往里面设置属性值


aware可以获取容器中的某些对象 因为这里还没有初始化完成 所以忽略 后面同一处理

接下来该走 增强器


//开始执行BFPP对象 里面是排序等操作


----------------------------------------------------------------
实例化之前的准备工作 先进行注册BPP 后面直接调用



可以广播事件 当监听器接收到广播事件之后 就可以执行对应的操作

留给子类做相关扩展工作

注册监听器

----------------------------------------------------
执行实例化操作

















通过反射创建对象 反射是在运行足够多次数时才能体现性能低 1,2次没影响


查看构造器是否有参 有参调用有参构造器 无参则调用无参构造器






暴露的是实例化 但为初始化的操作










浙公网安备 33010602011771号