(超全)一张脑图掌握 Spring Bean 的生命周期

(超全)一张脑图掌握 Spring Bean 的生命周期

好的,面试官,在开始之前,我先说下常用的两种作用域:singletonprototype

  • Spring 容器可以管理 singleton 作用域 Bean 的生命周期,在此作用域下,Spring 能够精确地知道该 Bean 何时被创建,何时初始化完成,以及何时被销毁。

  • 对于 prototype 作用域的 Bean,Spring 只负责创建,当容器创建了 Bean 的实例后,Bean 的实例就交给客户端代码管理,Spring 容器将不再跟踪其生命周期。每次客户端请求 prototype 作用域的 Bean 时,Spring 容器都会创建一个新的实例,并且不会管那些被配置成 prototype 作用域的 Bean 的生命周期。

也就是说,singleton 类型的 Bean 的一生都由 Spring 来管理,而 prototype 类型的 Bean 只是由 Spring 创建,一旦创建完成,后续不再由 Spring 管理。

下面我给您画一张图来展示 Bean 的一生,手动狗头。

(超全)一张脑图掌握 Spring Bean 的生命周期

(超全)一张脑图掌握 Spring Bean 的生命周期

(超全)一张脑图掌握 Spring Bean 的生命周期

最后我觉得还是得把这张图给大家,让大家顺利通过面试!

关注公众号,回复:Bean的一生,获取高清脑图 + xmind文件,当然还有更多精彩好文!

(超全)一张脑图掌握 Spring Bean 的生命周期