第一章~第一节spring bean的生命周期
来源:互联网 发布:淘宝网广告形式 编辑:程序博客网 时间:2024/06/07 00:48
看到上面的这张图可能大家就能很清晰的理解spring是如何初始化beans及管理benas的生命周期了,那下面就具体的说下这个整体流程。
传统的java应用中,bean的生命周期很简单。关键字new初始化bean然后待用,一旦这个bean不再使用则进入了垃圾回收阶段进行处理。那么
spring是如何管理?对比之下,bean的生命周期在spring容器的管理之中更加缜密(即分步骤更加明确)了。理解spring是如何管理bean的生命
周期是很重要的,因为你可能想要利用spring给你提供的选择来初始化你自己想要的(即带有自己特色的)bean。上图显示了spring容器启动并
加载bean之后的生命周期。
就像你看到的那样,一个bean factory做了如下的几步在bean可以使用之前。那么我们就更详细的分解下上图。
1】spring实例化bean开始
2】spring为bean的属性注入值或者相应的引用
3】如果bean实现了BeanNameAware接口,spring将传递这个bean的id到setBeanName()的方法中
4】如果bean实现了BeanFactoryAware接口,spring将调用setBeanFactory()方法并传递bean factory本身进去
5】如果bean实现了ApplicationContextAware接口,spring将调用setApplicationContext()方法,并通过一个引用来关闭应用上下文。
6】如果任何一个bean实现了BeanPostProcessor接口,spring将调用postProcessBeforeInitialization()方法
7】如果任何的bean实现了InitializingBean接口,spring将调用afterPropertiesSet()方法。相似的,如果一个bean声明init-method方法,那么指定的方法将被调用
8】如果任何一个bean实现了BeanPostProcessor接口,spring将调用postProcessAfterInitialization()方法
9】到此,bean就可以使用了在应用中,并且保持在应用上下文中直到应用被销毁。
10】如果任何bean实现了DisposableBean接口,spring将调用destroy()方法。同样如果任何一个bean声明了destroymethod()方法,指定的方法将被调用。
大概的流程就是这样。其中需要实践才能真正的理解。到此第一节结束。
- 第一章~第一节spring bean的生命周期
- Spring Bean的生命周期
- Spring Bean的生命周期
- spring - bean的生命周期
- Spring Bean的生命周期
- spring bean 的生命周期
- Spring bean的生命周期
- spring bean的生命周期
- Spring Bean的生命周期
- Spring Bean的生命周期
- Spring bean的生命周期
- Spring Bean的生命周期
- Spring Bean的生命周期
- Spring bean的生命周期
- Spring Bean的生命周期
- Spring Bean的生命周期
- Spring Bean 的生命周期
- spring Bean的生命周期
- shell expect使用方法
- COM套间
- poj 2431 Expedition 贪心
- 教你如何写简历找工作
- DTD和schema的优缺点
- 第一章~第一节spring bean的生命周期
- IOS几种简单有效的数组排序方法
- import maven projects 卡死,抛出GC overhead limit exceeded
- autolayout自动布局详解
- 设计模式之(三)Proxy模式
- 判断字符串是否为布尔型、浮点型、整型...
- Scanner vs. StringTokenizer vs. String.Split
- LCD-驱动基础
- 单例模式