SpringBean的生命周期

本文详细阐述了Spring框架的核心组件(如IoC和AOP)、在企业应用中的作用,以及SpringBean的生命周期八个关键阶段,包括实例化、属性注入、Aware接口的处理等,强调了AOP在解耦和提高开发效率中的重要性。
摘要由CSDN通过智能技术生成

Spring是一个轻量级的框架,它的底层主要是由两大部分组成:IOC、AOP,提供了展示层Sping MVC和持久层Spring JBDC以及业务层事务管理等众多企业级应用技术,还能整合开源世界著名得第三方框架和类库,主键成为使用最多得JavaEE企业应用开发框架;AOP是OOP得延续,是软件开发中得一个热点,也是一个Sring框架中得一个重要内容,是函数式编程得一种衍生范型,利用AOP可以对业务逻辑得各个部分进行隔离,从而使得业务逻辑之间得耦合度降低,提供程序的可重用性,同时提高了开发效率。

SpringBean的生命周期总体分为四个阶段:实例化、属性注入、初始化、销毁

第一步【实例化Bean】:根据配置文件中Bean的定义,利用Java ReFlection反射技术创建Bean的实例

第二步【注入对象依赖的属性值(或对象)】

第三步【处理各种Aware接口】:Spring会检测该Bean是否实现了Aware接口,通过Aware类型接口,可以让Spring框架为当前Bean注入相对应的内容。

        1.如果Bean实现BeanNameAware接口,会调用它实现的setBeanName(String beanId)方法,注入Bean名字

        2.如果Bean实现BeanClassLoaderAware接口,调用setBeanClassLoader()方法,注入ClassLoader对象的实例

        3.如果Bean实现BeanFactoryAware接口,会调用它实现的setBeanFactory()方法,注入的是Spring工厂

        4.如果Bean实现ApplicationContextAware接口,会调用setApplicationContext()方法,注入Spring上下文

第四步【执行BeanPostProcessor前置对象】:如果想对Bean进行一些自定义的前置对象,那么可以让Bean实现,BeanPostProcessor接口,将会在该阶段调用postProcessBeforeInitialization(Object obj,String s)方法。

第五步【执行initializingBean初始化方法】:如果Bean实现了initializuingBean接口,执行afeterPropertiesSet()方法

第六步【执行init-method自定义初始化方法】:如果Bean在Spring配置文件中配置了init-method属性,则会自动调用其配置的初始化方法

第七步【执行BeanPostProcessor后置处理】:如果这个Bean实现了BeanPostProcessor接口,将会调用postProcessAfterInitialization(Object obj,String s)方法,由于这个方法实在Bean初始化结束后调用;

第八步【执行DisposableBean销毁Bean】:当Bean不再需要时,会经过清理阶段,如果Bean实现了DisposableBean这个接口,会调用其实现destory()方法执行销毁;

第九步【执行destory-method自定义销毁方法】:如果这个Bean的Spring配置中配置destroy-method属性,会自动调用其配置的自定义销毁方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值