Spring Bean的生命周期

Bean的初始化过程已经被Spring完全包装起来了,无法人工干预。

       Spring预留了两个回调方法的入口

回调方法:定义出来完成一定的功能,提供给回调者/服务器/上层容器调用的方法,叫做回调方法。

Bean类

public class Bean1 {
	public Bean1() {
		//System.out.println("bean1...构造方法");
	}
	public void show(){
		System.out.println("bean1...方法");
	}
	//定义一个方法,在Bean创建时,执行
	public void init(){
		System.out.println("打印init");
	}
	//定义一个方法,在Bean销毁时,执行
	public void destory(){
		System.out.println("打印销毁");
	}
}

调用

	public static void main(String[] args) {
		ClassPathXmlApplicationContext ac = new ClassPathXmlApplicationContext(
				"applicatioContext.xml");
		ac.getBean("bean4");
		ac.close();
	}

配置文件

	<!-- bean的生命周期控制 -->
	<!-- init-method:指定创建bean时对应的执行方法 -->
	<!-- destroy-method:指定销毁Bean时对应的执行方法 -->
	<bean id="bean4" class="com.hao947.bean.Bean1"
		init-method="init"
		destroy-method="destory"
	></bean>

注意:

Bean的创建时在新建该对象时,完成,Bean的销毁是在容器被销毁或关闭之前完成

       关闭容器:使用ClassPathXmlApplicationContext对象来完成 ctx.close()

       Bean的销毁只能针对于单例对象,而不能应用于非单例对象

       非单例的Bean对象的回收交由JVM完成——GC


Spring Bean的生命周期,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。