bean 的生命周期
bean 的创建 --> 初始化 --> 销毁
ioc 容器管理 bean 的声明周期
可以自定义初始化和销毁方法
构造器( 对象创建 )被调用时机
单实例:在容器启动的时候创建对象
多实例:在每次获取的时候创建对象
初始化方法被调用时机
单实例:对象创建完成,属性赋值好了之后,调用初始化方法
多实例:在每次获取的时候,调用初始化方法
销毁方法被调用时机
单实例:容器关闭的时候
多实例:容器不会管理这个 bean ; 也就是说容器不会调用这个销毁方法
一、Student 类
public class Student {
public Student(){
System.out.println("创建 Student 对象");
}
public void init(){
System.out.println("初始化对象");
}
public void destory(){
System.out.println("销毁对象");
}
}
二、配置类
@Configuration
public class ConfigOfLifeCycle {
//initMethod:指定初始化的方法
//destroyMethod:指定销毁的方法
@Bean(initMethod="init",destroyMethod="destory")
public Student student(){
return new Student();
}
}
三、测试方法
@Test
public void test3(){
//创建 ioc 容器
AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(ConfigOfLifeCycle.class);
//关闭容器:用来测试 destory() 方法
applicationContext.close();
}
来源:https://www.cnblogs.com/fangwu/p/8678026.html