码迷,mamicode.com
首页 > 编程语言 > 详细

Spring Bean生命周期源码剖析

时间:2020-10-09 20:45:23      阅读:26      评论:0      收藏:0      [点我收藏+]

标签:源码剖析   des   stp   好的   适配器模式   解密   proc   ESS   回调   

技术图片

概述

spring流行了很长时间了,是一个用java编写的轻量级框架,受到了很多公司及程序员的欢迎,Bean生命周期是一个对象从实例化开始到销毁的全过程,了解生命周期是很有必要的。

重要性

spring的生命周期是比较复杂的,只有了解其过程及原理才能更好的扩展程序。

源码剖析

生命周期过程

bean的实例化

技术图片

属性填充及Aware接口检测设置依赖

技术图片技术图片

如果容器自定义了BeanpostProcessor的实现类,则执行处理器相应的前置处理

技术图片

bean实现了初始化接口InitlializingBean,则会执行相应的逻辑

技术图片

同时也自定义了初始化方法init-method

技术图片

如果容器自定义了BeanpostProcessor的实现类,则会执行相应处理器的后置处理

技术图片

注册销毁的回调bean

技术图片

bean实现了销毁接口DisposableBean,则会执行相应的逻辑

技术图片

同时也自定义了销毁化方法destory-method

技术图片

流程的请求总结

技术图片
上述流程图总结了从容器启动到销毁的全过程

总结

一、从上面源码分析,spring的生命周期可以分为四大块:
1、bean的实例化
2、bean属性的设值
3、bean的初始化
4、bean的销毁
二、实现了Aware的接口,则会注入相应的依赖
三、接口BeanPostProcessor有两个初始化方法,这两个方法在增加bean的时候,很重要,比如,spring aop可以返回一个代理对象;参数的解密等等
四、其中生命周期用了简单工厂、工厂方法、单例模式、适配器模式、策略模式,利用这些设计模式,能够设计出更好的应用程序。

Spring Bean生命周期源码剖析

标签:源码剖析   des   stp   好的   适配器模式   解密   proc   ESS   回调   

原文地址:https://blog.51cto.com/xxdeelon/2540442

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!