牛叔叔 的笔记

好好学习

2023-05-28 11:42

Spring执行流程

牛叔叔

JavaEE

(562)

(0)

收藏

Spring是一个Java企业级应用程序的开源框架,主要目的是简化创建基于Java的企业级应用程序。Spring框架提供了许多优秀的功能,如依赖注入(DI)或者控制反转(IOC)和面向切面编程(AOP)。Spring的执行流程如下:

1、对配置文件进行读取:首先Spring会读取应用程序中的配置文件,这些配置文件主要包括XML文件、Java注解或者Java配置类。

2、实例化对象:Spring使用Java反射机制来创建指定的对象并通过依赖注入技术将它们连接起来。需要注意的是,这里创建的不仅包括用户自定义的Bean,还包括一些框架自带的Bean,如BeanFactory、ApplicationContext等。

3、解析对象之间的依赖关系: Spring会分析所有Bean之间的依赖关系并将它们装配成一个有机的整体。对于利用属性或构造函数注入实现依赖关系的Bean,Spring会查找相应的类,并使用Java反射机制创建实例。对于使用接口作为参数注入的Bean,Spring则会设置具体的实现类。

4、Bean初始化: 在初始化Bean之前,Spring可以调用BeanPostProcessor接口的任意实现来修改Bean的属性。初始化过程指的是设置Bean的属性。在这个过程中,Spring会合并所有的配置源并为Bean注入属性和依赖关系。需要注意的是,实现了InitializingBean接口的Bean会执行afterPropertiesSet方法。

5、Bean使用: 在将Bean成功创建和初始化之后,它们可以用于应用程序中了。

6、Bean销毁: 当应用程序关闭时,Spring会自动回收所有的Bean。在这个过程中,实现了DisposableBean接口的Bean会先执行destroy方法。


0条评论

点击登录参与评论