Spring管理的对象的生命周期
生命周期:
某个对象从创建到最终销毁的历程!(一般单例才会讨论生命周期!)
生命周期的意义就是知道什么时候做什么(类比人的生命周期,不同年龄段做不同的事情)!
(一般拥有生命周期的对象都不是开发人员去维护的!都是由容器创建对象,开发人员一般都是继承重写!也就是:“容器决定什么时候执行,开发人员决定调用什么方法做什么!”)
【错】进程:正在运行的程序!
【对】进程:某个程序从准备运行->申请硬件资源(例如CPU,内存等)->运行->运行结束的历程!
先来看一下Servlet ,它的生命周期会有几个特殊的方法,在特定的情况下会被调用,这些称为生命周期方法:
1.init()初始化!当Servlet创建后,立即执行只执行一次。
2.service()接收到相应的请求会调用,接收几次就执行几次。
3.destroy() Servlet对象即将被销毁时执行,也只执行一次,适合写关闭类的代码类比try catch中的 finally方法。
Spring框架可以自定义2方法(初始化方法&销毁方法):
Spring框架会在创建对象后自动调用初始化方法,在销毁前自动调用销毁方法。
方法定义
1.访问权限 :public
2.返回值类型:void
3.方法定义:自己根据功能定义
4.参数列表:空
package cn.tedu.spring;
public class User {
public User() {
System.out.println("User.User()");
}
public void init() {
System.out.println("User.init()");
}
public void destroy() {
System.out.println("User.destroy()");
}
}
package cn.tedu.spring;
import org.springframework.context.annotation.Bean;
public class Beans {
@Bean(initMethod = "init",destroyMethod = "destroy")
public User user(){
return new User();
}
}