Spring之旅-Bean生命周期-2020-1-22

Spring容器使用DI管理组件,它有两种类型(接口)。
bean工厂(最基本容器)
import org.springframework.beans.factory.BeanFactory;
应用上下文(开发使用)
import org.springframework.context.ApplicationContext;web

经常使用的应用上下文有:
Java配置Spring应用上下文。
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
Java配置SpringWeb应用上下文。
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
类路径下XML配置文件加载应用上下文,把定义文件做为类资源。
import org.springframework.context.support.ClassPathXmlApplicationContext;
系统路径下XML配置文件加载应用上下文。
import org.springframework.context.support.FileSystemXmlApplicationContext;
Web应用下XML配置文件加载应用上下文
import org.springframework.web.context.support.XmlWebApplicationContext;spring

Bean的生命周期。
1,bean实例化,建立。
2,将值和bean的引用注入到bean属性中。
3,若是bean实现BeanNameAware接口,将bean的ID传递给setBean-Name()方法。
4,若是bean实现了BeanFactoryAweare接口,调用setBeanFactory()方法,将BeanFactory容器实例传入。
5,若是bean实现ApplicationContextAware接口,调用setApplicationContext()方法,将bean所在应用上下文的引用传入。
6,若是bean实现BeanPostProcessor接口,调用PostProcessorBeforeInitialization()方法。(预初始化)
7,若是bean实现InitializaingBean接口,调用afterPropertiesSet()方法。
8,若是bean实现BeanPostProcessor接口,调用PostProcessorAfterInitialization()方法。(初始化后)
9,bean可使用了。
10,若是bean实现DisposableBean接口,调用destroy()接口方法,销毁。接口

相关文章
相关标签/搜索