探索 Spring 框架:从 Bean 管理到生态系统
1. 管理 Spring 中的 Bean
当你拥有一个应用上下文时,就可以通过调用上下文的 getBean()
方法从 Spring 容器中检索 Bean。了解如何创建 Spring 容器的基础知识后,接下来深入了解 Bean 在容器中的生命周期。
在传统 Java 应用中,Bean 的生命周期很简单。使用 Java 的 new
关键字实例化 Bean(或者进行反序列化)后即可使用。当 Bean 不再使用时,它就符合垃圾回收条件,最终会被清理。
相比之下,Spring 容器中 Bean 的生命周期更为复杂。理解 Spring Bean 的生命周期很重要,因为你可以利用 Spring 提供的一些机会来定制 Bean 的创建方式。以下是典型 Bean 加载到 Spring 应用上下文时的启动生命周期步骤:
1. Spring 实例化 Bean。
2. Spring 将值和 Bean 引用注入到 Bean 的属性中。
3. 如果 Bean 实现了 BeanNameAware
接口,Spring 会将 Bean 的 ID 传递给 setBeanName()
方法。
4. 如果 Bean 实现了 BeanFactoryAware
接口,Spring 会调用 setBeanFactory()
方法,并传入 Bean 工厂本身。
5. 如果 Bean 实现了 ApplicationContextAw