一,Bean的在spring容器中生命周期共三个阶段; 构建-->初始化-->销毁.
二, Bean的生命周期的运行方式及时间.
1,构建: 单例模式的Bean在容器启动时构建,多例模式在每次调用Bean时构建;
2,初始化: 构建完成,并赋值后(?) ,运行初始化方法, 不管单例还是多例都会运行初始化方法;
3,销毁:只有单例Bean在容器销毁时会运行销毁方法,多例模式Bean不运行销毁方法.
三,可以通过如下四种方式自定义Bean初始化,销毁方法
1,在Bean注解中配置属性: initMethod--初始方法, destroyMethod--销毁方法
2,Bean实现InitializingBean (5iB) 接口的afterpropertiesSet()方法进行初始化,实现DisposableBean接口的destroy()方法进行销毁.
3,在Bean的方法上使用注解 @PostConstruct --构建并完成赋值后运行 @PreDestroy --销毁前运行
4,这是一个针对容器全局的初始化方式, 实现BeanPostProcessor接口中的两个方法--postProcessBeforeInitialization()及postProcessAfterInitialization(). postProcessBeforeInitialization执行时机--所有上述初始化方法之前,postProcessAfterInitialization()执行时机--上述初始化方法之后.