关于spring:后端面经SpringSpring-中-bean-的生命周期

116次阅读

共计 677 个字符,预计需要花费 2 分钟才能阅读完成。

1.bean 简介

  • bean 是一个对象,是由 Spring 中的 IoC 创立、实例化的对象。
  • 个别的 java 对象,应用的时候创立,不须要就开释内存进行销毁,而 bean 的生命周期更加简单
  • 作用域

    • singleton:默认单例模式,惟一的 bean 实例。
    • prototype:每次申请都会创立一个新的 bean 实例。
    • request:每次 HTTP 申请都会创立一个新的 bean 实例,该作用域仅在以后 http request 内无效。
    • session:每次 HTTP 申请都会创立一个新的 bean 实例,该作用域仅在以后 HTTP session 内无效。
    • global-session:全局 session 作用域,仅仅在基于 portlet 的 web 利用中才有意义,Spring5 曾经没有了。

2. 生命周期

  1. 实例化 / 创立

    • 依附反射进行实例化,而不须要像个别的 java 对象一样手动创立;
  2. 属性填充

    • 应用 依赖注入 进行属性填充;
  3. 初始化

    • 实现初始化之后,bean 能够应用;
  4. 销毁

    • 容器敞开或者进行服务的时候,销毁该对象;
  5. 类比

    • 人的毕生:出世 -> 学习 -> 成长 -> 死亡
    • bean 的毕生:实例化 -> 属性填充 -> 初始化 -> 销毁

    3. 参考资料

  • 阿里云开发社区 -《聊透 Spring bean 的生命周期》

    • 链接
    • 粗疏全面讲述了 bean 的生命周期,辅以代码了解。
  • 掘金社区 -《Spring Bean 生命周期,如同人的毕生》

    • 链接
    • 用形象的社会景象类比 bean 对象的生命周期,易于了解,并且用一个 PersonBean 作为示例,给出生命周期对应的代码。
  • SegmentFault-《一文读懂 Spring Bean 的生命周期》

    • 链接
    • 具体介绍了 bean 对象的概念,以及 bean 的生命周期
正文完
 0