Bean对象生命周期流程
- 通过构造方法或工厂方法创建bean对象,
- 为bean属性赋值,
- 调用 bean 的初始化方法,即init-method指定方法,
- bean实例化完毕,可以使用,
- 容器关闭, 调用 bean 的销毁方法,即destroy-method指定方法。
init-method:在设置bean的属性后执行的自定义初始化方法,注意:①、该方法不能有参数;②、对象每创建一次就会执行一次该方法
destroy-method:该参数中的方法只有bean标签属性scope为singleton且关闭Spring IOC容器时才会被调用,注意:该方法不能有参数
//Student类
public class Student {
public Student() {
System.out.println("student构造方法");
}
public void a() {
System.out.println("init方法");
}
public void b() {
System.out.println("destory方法");
}
}
//Test类
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Test {
public static void main(String[] args) {
ClassPathXmlApplicationContext applicationContext=new ClassPathXmlApplicationContext("bean.xml");
applicationContext.getBean("student");
applicationContext.close();
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="student" class="com.zzu.vo.Student" init-method="a" destroy-method="b"></bean>
</beans>
执行结果: