spring中bean 的生命周期
时间: 2024-10-17 15:02:21 浏览: 49
在Spring框架中,Bean的生命周期是指Bean从创建、初始化、使用到销毁的整个过程。Spring容器对Bean的生命周期进行了严格的管理,主要有以下几个阶段:
1. **实例化** (Creation): Spring IoC容器根据配置创建Bean的实例。当容器检测到缺少Bean时,会调用对应的构造函数或静态工厂方法创建一个新的实例。
2. **初始化** (Post-creation Initialization): 创建完成后,Spring会对Bean进行属性注入和依赖解析,如果存在`@PostConstruct`注解的方法,会在这一阶段调用,用于进一步初始化。
3. **活跃状态** (Active): Bean成为Spring容器的一部分,开始处理用户的请求。这是最常见的Bean状态,也是我们直接使用的阶段。
4. **缓存** (Caching): 对于频繁使用的Bean,Spring会将其缓存起来,避免每次请求都去创建新实例,提高性能。
5. **失效和销毁** (Lazy-init and Destruction): 如果Bean标记为`lazy-init`,则只有在第一次访问时才实例化。当应用程序结束、关闭上下文,或者Bean不再满足懒加载条件时,Spring会调用`@PreDestroy`注解的方法进行资源清理,然后真正销毁Bean实例。
阅读全文