面试常见问题-Bean的生命周期?

简介: 面试常见问题-Bean的生命周期?

bean的生命周期就是一个创建bean的过程


主要分为4个步骤,实例化,属性注入,初始化,销毁


spring的bean的生命周期主要是创建bean的过程,一个bean的生命周期主要是4个步骤,实例化,属性注入,初始化,销毁,但是对于一些复杂的bean的创建,spring会在bean的生命周期中开放很多的接口,可以让你加载bean的时候对bean做一些改变,因此spring的bean的生命周期总共有以下几步:


首先在spring中有一些特殊的bean会介入到其他bean的声明周期当中去,所以一个普通的bean的声明周期为:


1、 实现了BeanFactoryPostProcessor接口的bean

在加载其他的bean的时候,也会调用这个bean的postProcessBeanFactory方法,可以在这个步骤去对bean中的属性去赋值。设置年龄初始化18等等。


2、实现了InstantiationAwareBeanPostProcessor接口的bean

会在实例化bean之前调用postProcessBeforeInstantiation方法


3、 然后在对bean进行实例化


4、 对bean进行属性注入


5、 对bean进行初始化,在初始化中,包含了以下几个步骤:


1)实现了BeanFactoryAware接口,会先调用setBeanFactory方法

2)实现了BeanNameAware接口,会先调用setBeanName方法

3)实现了BeanPostProcessor接口,会先调用postProcessBeforeInitialization方法

3)实现了InitializingBean接口,会调用afterPropertiesSet方法

4)然后在进行aop后置处理,通过实现BeanPostProcessor接口,在postProcessAfterInitialization方法中进行动态代理


6、 销毁


当然还有一些其他的步骤,在此就不一一列举了,bean的生命周期总共有18步。

相关文章
|
14天前
快速排序--面试最常见问题
快速排序--面试最常见问题
13 1
|
1天前
|
存储 NoSQL MongoDB
MongoDB实战面试指南:常见问题一网打尽
MongoDB实战面试指南:常见问题一网打尽
11 4
|
1月前
|
Python
2024年最新【Python】循环结构:while 循环(1),阿里巴巴面试常见问题及回答技巧
2024年最新【Python】循环结构:while 循环(1),阿里巴巴面试常见问题及回答技巧
2024年最新【Python】循环结构:while 循环(1),阿里巴巴面试常见问题及回答技巧
|
1天前
|
Java
Java中的面试常见问题解析
Java中的面试常见问题解析
|
1月前
|
数据采集 算法 网络协议
最新Python 面试常见问题(1),2024年最新面试官必问的10个问题
最新Python 面试常见问题(1),2024年最新面试官必问的10个问题
最新Python 面试常见问题(1),2024年最新面试官必问的10个问题
|
18天前
|
存储 算法 数据挖掘
数据结构面试常见问题:解锁10大关键问题及答案解析【图解】
数据结构面试常见问题:解锁10大关键问题及答案解析【图解】
|
1月前
|
算法 搜索推荐 大数据
数据结构面试常见问题
V哥在工作中整理了22个常用数据结构实现与原理分析,在面试中可以帮你你充分准备
|
1月前
|
SQL 分布式计算 前端开发
10个常见的python面试问题_python面试常见问题
10个常见的python面试问题_python面试常见问题
|
1月前
|
Java 调度
Java面试必考题之线程的生命周期,结合源码,透彻讲解!
Java面试必考题之线程的生命周期,结合源码,透彻讲解!
57 1
|
1月前
|
运维 监控 Unix
【专栏】Linux系统管理员面试中的常见问题,涵盖基础知识、系统管理和故障排查。
【4月更文挑战第28天】本文概述了Linux系统管理员面试中的常见问题,涵盖基础知识、系统管理和故障排查。面试官会询问Linux与Unix的关系、内核功能、文件系统类型、权限位、用户组概念、链接类型、输入输出、进程和环境变量等。此外,还会涉及软件安装、服务配置、日志监控、网络管理、防火墙配置、LVM、RAID、用户管理、备份策略等实践技能。故障排查和脚本编程能力也是重点,包括系统故障分析、脚本在系统管理中的应用、磁盘空间管理、服务故障诊断及性能优化。准备面试的求职者应注重理论与实践经验的结合,持续学习以提升专业能力。