1.从Java EE 5规范开始,Servlet中增加了两个影响Servlet生命周期的注解(Annotion);@PostConstruct和@PreDestroy。这两个注解被用来修饰一个非静态的void()方法 写法有如下两种方式
@Component public class test { @PostConstruct public void initialization() { System.out.println("============================测试 @PostConstruct============================================"); } @PreDestroy public void destroy() { System.err.println("============================测试 @@PreDestroy============================================"); } }
2. 被@PostConstruct修饰的方法会在服务器加载Servle的时候运行,并且只会被服务器执行一次。PostConstruct在构造函数之后执行,init()方法之前执行。PreDestroy()方法在destroy()方法执行执行之后执行 执行顺序如下:
3.Spring 负责实例化Bean,提供一系列回调函数,用于进一步配置Bean,包括@PostConstruct和@PreDestroy注解
3.1 Spring 负责实例化Bean,开发者可以提供一系列回调函数,用于进一步配置Bean,包括@PostConstruct和@PreDestroy注解
3.2 当Bean在容器销毁之前,调用被@PreDestroy注解的方法
4.注解的作用:
4.1.用来执行依赖注入之后的初始化操作
4.2.用来执行依赖注入之后的初始化操作
4.3.注解用来作用于方法
4.4.每个类最多只有一个只有的注解方法 只会执行一次
4.5.本注解必须被所有能依赖注入的类所支持
4.6.方法必须是无参方法 (除非声明为拦截器方法)
4.7.方法最好不是静态方法
4.8.方法可以是final修饰
5.执行结果: