Bean的生命周期
Bean的初始化和销毁
一、使用@Bean注解的初始化和销毁属性
1 | // 在dog实例中指定init和destroy方法 |
从测试结果来看当创建对象时,通过 initMethod
,destroyMethod
指定初始化和销毁方法时可行的。
init
方法在对象创建后执行。destroy
在容器销毁前执行.
二、继承 InitializingBean 和 DisposableBean 接口
方法同上,不过需要对象类实现这两个接口
1 | public class Cat implements InitializingBean, DisposableBean { |
三、使用JSR标准注解 @PostConstruce 和 @PreDestroy
1 | public class Bug { |
四、BeanPostProcessor自定义初始化前后方法
先自定义一个 MyBeanPostProcessor
,并将它放到容器中,在启动后,每次生成bean时,都会执行下面的 postProcessBeforeInitialization
和 postProcessAfterInitializationde
前置方法和后置方法。
1 | public class MyBeanPostProcessor implements BeanPostProcessor { |