1. 实例化 bean 对象,类似于 new XXObject()
  2. 将配置文件中配置的属性填充到刚刚创建的 bean 对象中。
  3. 检查 bean 对象是否实现了 Aware 一类的接口,如果实现了则把相应的依赖设置到 bean 对象中。比如如果 bean 实现了 BeanFactoryAware 接口,Spring 容器在实例化bean的过程中,会将 BeanFactory 容器注入到 bean 中。
  4. 调用 BeanPostProcessor 前置处理方法,即 postProcessBeforeInitialization(Object bean, String beanName)。
  5. 检查 bean 对象是否实现了 InitializingBean 接口,如果实现,则调用 afterPropertiesSet 方法。或者检查配置文件中是否配置了 init-method 属性,如果配置了,则去调用 init-method 属性配置的方法。
  6. 调用 BeanPostProcessor 后置处理方法,即 postProcessAfterInitialization(Object bean, String beanName)。我们所熟知的 AOP 就是在这里将 Adivce 逻辑织入到 bean 中的。
  7. 注册 Destruction 相关回调方法。
  8. bean 对象处于就绪状态,可以使用了。
  9. 应用上下文被销毁,调用注册的 Destruction 相关方法。如果 bean 实现了 DispostbleBean 接口,Spring 容器会调用 destroy 方法。如果在配置文件中配置了 destroy 属性,Spring 容器则会调用 destroy 属性对应的方法。

一张图看懂Bean的实例化过程相关推荐

  1. 一张图看懂图像识别算法发展历史

    一张图看懂图像识别算法发展历史

  2. 【转】几张图看懂列式存储

    几张图看懂列式存储 转载于:https://www.cnblogs.com/apeway/p/10870211.html

  3. 一张图看懂阿里云网络产品[二] 专有网络VPC

    摘要: 一张图看懂网络产品系列文章,让用户用最少的时间了解网络产品,本文章是第二篇 专有网络VPC 一张图看懂阿里云网络产品系列文章,让用户用最少的时间了解网络产品,本文章是第二篇 专有网络VPC 系 ...

  4. 一张图看懂2017双11中的网络产品和技术

    摘要: 大家都知道,2017年双11又创造了新纪录,全天交易额1682亿,交易峰值32.5万笔/秒,支付峰值25.6W笔/秒,狂欢的背后是极其复杂庞大的技术系统,其中就有大量阿里云云计算相关的产品和技 ...

  5. 鸿蒙分布式体验,一张图看懂鸿蒙OS 2.0 分布式能力升级构筑全场景体验

    原标题:一张图看懂鸿蒙OS 2.0 分布式能力升级构筑全场景体验 [手机中国新闻]9月10日下午,华为召开HDC2020大会,全新的HarmonyOS 2.0正式发布.新系统的分布式能力全面升级,同时 ...

  6. 一张图看懂SOA与微服务

    一张图看懂SOA与微服务 图片来自普元 1.SOA是站在整个企业系统的角度的治理 2.微服务的概念则小一点 3.ESB主要解决的是系统集成的问题,而且是面向已有的信息资产

  7. 一张图看懂开源许可协议,开源许可证GPL、BSD、MIT、Mozilla、Apache和LGPL的区别...

    一张图看懂开源许可协议,开源许可证GPL.BSD.MIT.Mozilla.Apache和LGPL的区别 转载于:https://www.cnblogs.com/jingzhishen/p/589278 ...

  8. 一张图看懂光圈、快门、感光度的意义

    一张图看懂光圈.快门.感光度的意义 ​​​​ 光圈越大,参照物越模糊. 快门越高,运动物越清晰. 感光度越大,照片糙点越多.

  9. 一张图看懂光圈、快门、感光度的意义 ​​​​

    一张图看懂光圈.快门.感光度的意义 ​​​​ 光圈越大,参照物越模糊. 快门越高,运动物越清晰. 感光度越大,照片糙点越多.

最新文章

  1. java的高级特性_java的高级特性_for
  2. 【BZOJ 2809】 [Apio2012]dispatching
  3. c++和python的区别、javascript_python和c++的区别
  4. linux添加删除回环地址,CentOS7如何添加本地回环地址?CentOS7添加本地回环地址的方法...
  5. ssh+json开发实例
  6. Ping记录时间的方法
  7. Django--4、认证系统
  8. 【学习笔记】如何理解Raft中的ReadIndex?
  9. java如何查看jar编译的jdk版本
  10. 在OpenCV中使用YOLO v3进行物体检测
  11. 图灵、冯诺依曼谁才配得上计算机之父?
  12. android 渐变蒙版_干货分享(第八期):PS蒙版教学,利用蒙版制造渐隐效果
  13. 银行系统总体架构\银行核心系统\常用金融名词解释
  14. 魔兽地图编辑器 简单介绍
  15. 数据解读:在上海,创业者真的不受待见吗?
  16. windows7系统,ping本机ip地址请求超时的解决方案
  17. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
  18. esxi安装威联通_威联通TS-453Bmini NAS加装内存,轻松玩转虚拟机安装win10系统
  19. 架构师速成4.4-我该学什么语言
  20. 闲话Google拼音输入法及其它(一)

热门文章

  1. MyBatis(三)MyBatis缓存和工作原理
  2. 面试官:new一个对象的过程中发生了什么
  3. Kafka分区分配计算(分区器Partitions)
  4. 音视频技术开发周刊 | 162
  5. 喜马拉雅贺雯迪:基于端到端TTS实现更具生动、富有情感的语音合成表现
  6. 音视频技术开发周刊 82期
  7. 指标统计:基于流计算 Oceanus(Flink) 实现实时 UVPV 统计
  8. 写给前端工程师的 Flutter 详细教程
  9. 2018 中国服务创新大会 | 早鸟票正式开售
  10. PMP之项目相关方管理