Bean 的生命周期
Bean 实例从创建到最后销毁,需要经过很多过程,执行很多生命周期方法。
Step1:调用无参构造器,创建实例对象。
Step2:调用参数的 setter,为属性注入值。
Step3:若Bean实现了BeanNameAware接口,则会执行接口方法setBeanName(String beanId),使 Bean 类可以获取其在容器中的 id 名称。
Step4:若 Bean 实现了 BeanFactoryAware 接口,则执行接口方法 setBeanFactory(BeanFactory factory),使 Bean 类可以获取到 BeanFactory 对象。
Step5 : 若 定 义 并 注 册 了 Bean 后 处 理 器 BeanPostProcessor , 则 执 行 接 口 方 法postProcessBeforeInitialization()。
Step6:若 Bean 实现了 InitializingBean 接口,则执行接口方法 afterPropertiesSet ()。该方法在 Bean 的所有属性的 set 方法执行完毕后执行,是 Bean 初始化结束的标志,即 Bean 实例化结束。
Step7:若设置了 init-method 方法,则执行。
Step8 : 若 定 义 并 注 册 了 Bean 后 处 理 器 BeanPostProcessor , 则 执 行 接 口 方 法postProcessAfterInitialization()。
Step9:执行业务方法。
Step10:若 Bean 实现了 DisposableBean 接口,则执行接口方法 destroy()。
Step11:若设置了 destroy-method 方法,则执行。
举例:ba07 包
Bean 的生命周期相关推荐
- java 中 bean 的生命周期
java 中 bean 的生命周期 本篇中会对涉及到的知识点皆做出描述: 首先,我们先了解先虚拟机的类加载机制: 虚拟机把描述类的数据从Class 文件中加载到内存,并对数据进行校验.转换解析和初始化 ...
- Spring学习总结1——bean的生命周期
为什么80%的码农都做不了架构师?>>> Spring实际上是一个容器框架,可以配置各种bean(action/service/domain/dao...),并且可以维护bea ...
- Spring bean 实现生命周期的三种解决方案
Spring bean 实现生命周期的三种解决方案 参考文章: (1)Spring bean 实现生命周期的三种解决方案 (2)https://www.cnblogs.com/javawebsoa/a ...
- Spring ----Bean的生命周期
这Spring框架中,一旦把一个bean纳入到Spring IoC容器之中,这个bean的生命周期就会交由容器进行管理, 一般担当管理者角色的是BeanFactory或ApplicationConte ...
- spring --(12)bean的生命周期
2019独角兽企业重金招聘Python工程师标准>>> springIOC容器可以管理bean的生命周期,管理过程: 1>通过构造器或工厂方法创建bean实例 2>给be ...
- Bean的生命周期——init-method和destroy-method - 通过让Bean实现InitializingBean,DisposableBean--BeanPostProcessor
* bean的生命周期: * bean创建---初始化----销毁的过程 * 容器管理bean的生命周期: * 我们可以自定义初始化和销毁方法:容器在bean进行到当前生命周期的时候来调用我们自定义的 ...
- spring启动过程之源码跟踪(小结bean的生命周期)--spring Debug
spring in action 1.容器发现bean的定义,初始化bean 2.使用依赖注入的方式,spring根据bean定义,设置bean的所有属性 3.如果bean继承了BeanNameAwa ...
- Spring中Bean的生命周期是怎样的
于普通的Java对象,当new的时候创建对象,当它没有任何引用的时候被垃圾回收机制回收.而由Spring IoC容器托管的对象,它们的生命周期完全由容器控制.Spring中每个Bean的生命周期如下: ...
- Spring 中 Bean 的生命周期
本文作者: 伯乐在线 - yemengying 智商捉鸡?,实在没办法一下子理解Spring IoC和AOP的实现原理,看的闹心也不太懂,所以...决定拆成小的不能在小的一个个问题,一点点啃.今天先来 ...
- 【Spring】Bean的生命周期
Spring Bean是Spring应用中最最重要的部分了.所以来看看Spring容器在初始化一个bean的时候会做那些事情,顺序是怎样的,在容器关闭的时候,又会做哪些事情. 示例代码 git地址: ...
最新文章
- Visual Studio工具栏中无法选择调试设备
- eclipse中svn插件的安装
- routing zuul_尚学堂0131之zuul的相关概念及如何性能调优
- 【转】QT布局QGridLayout QHBoxLayout QVBoxLayout简要分析!!
- NAS、CIFS、NFS之间的关系
- centOS安装openoffice的方法
- 【Clickhouse】Clickhouse PRIMARY KEY, CONSTRAINT, identifier, column declaration, INDEX
- Linux 查看文件修改时间(精确到秒)
- 一键换机显示二维码错误_【丽迪资讯】装路由器,忘记上网账号跟密码?别担心360amp;磊科智能路由器一键换机轻松搞定!...
- Linux 解决文件删除,但并没有改变磁盘可用性
- ssm基于WEB的房屋出租管理系统的设计与实现161620
- 74HC138译码器的原理和使用
- BT和eMule协议的比较和分析
- 今日头条赚钱是真的吗,今日头条赚钱规则是什么
- 超市管理系统-1(JavaSwing和Oracle数据库)
- R语言安装ggcor包
- 用css3实现图片左右翻转
- 11_ue4天空球的使用
- 来自一位普通博导带学生的所做所思:博士该这么读!
- 一:Datart的下载、本地运行
热门文章
- WinXP共享密码设置
- 单通道说话人语音分离——Conv-TasNet(Convolutional Time-domain audio separation Network)
- “深入理解-GJB5000A-2008军用软件研制能力成熟度模型” 公开课开始
- 浦东搬场公司搬家风水注意事项
- c++怎么确定一个整数有几位_德国人怎么学电机——浅谈电机模型(十六):同步电机(三)永磁电机(一)...
- 用python实现12306抢票
- 听李维谈JB2007有感 CodeGear能否重现辉煌?
- 07月31日病毒预警与安全动态(转)
- 数据库实验二之数据查询
- TortoiseSVN上传文件显示被锁定