bean的生命周期

生命周期:从生到死的过程。那么对于bean来说就是从创建到销毁的过程。

普通的Java对象的创建由我们new创建,然后在不用的时候,java回收机制会自动回收。那么bean呢?

bean是spring中的对象,和普通对象不一样的就是bean是由spring创建和管理的,我们使用的时候直接调用,bean的生命周期由spring决定。

那么一个bean的生命周期可以分为五部分:

  1. 实例化:给bean分配内存空间。**注意:实例化和初始化不一样,**实例化只是分配一个内存空间。
  2. 设置属性:依赖注入.
  3. 初始化:执行各种通知,如BeanNameAware;执行初始化。
  4. 使用bean
  5. 销毁bean

bean的执行流程

bean的销毁是要在容器(上下文)销毁前才回去执行的。

只有这些是不会执行的,要加上容器的销毁:

这样就会在容器销毁前执行bean销毁的方法。

为什么属性装配在初始化前边呢?

因为初始化的时候可能会用到有的方法或者值,所以要先一步进行属性装配。

相关推荐
iCxhust9 分钟前
Prj10--8088单板机C语言8259测试(1)
c语言·开发语言
AWS官方合作商10 分钟前
在CSDN发布AWS Proton解决方案:实现云原生应用的标准化部署
java·云原生·aws
gadiaola1 小时前
【JVM】Java虚拟机(二)——垃圾回收
java·jvm
крон3 小时前
【Auto.js例程】华为备忘录导出到其他手机
开发语言·javascript·智能手机
zh_xuan4 小时前
c++ 单例模式
开发语言·c++·单例模式
coderSong25684 小时前
Java高级 |【实验八】springboot 使用Websocket
java·spring boot·后端·websocket
老胖闲聊4 小时前
Python Copilot【代码辅助工具】 简介
开发语言·python·copilot
Blossom.1184 小时前
使用Python和Scikit-Learn实现机器学习模型调优
开发语言·人工智能·python·深度学习·目标检测·机器学习·scikit-learn
Mr_Air_Boy5 小时前
SpringBoot使用dynamic配置多数据源时使用@Transactional事务在非primary的数据源上遇到的问题
java·spring boot·后端
曹勖之5 小时前
基于ROS2,撰写python脚本,根据给定的舵-桨动力学模型实现动力学更新
开发语言·python·机器人·ros2