从Java EE 5规范开始,Servlet中增长了两个影响Servlet生命周期的注解(Annotion);@PostConstruct和@PreDestroy。这两个注解被用来修饰一个非静态的void()方法 。写法有以下两种方式:服务器
@PostConstructPublic void someMethod() {
}
或者
public @PostConstruct void someMethod(){}
一、PostConstruct修饰的方法会在服务器加载Servle的时候运行,而且只会被服务器执行一次。
PostConstruct在构造函数以后执行,init()方法以前执行。函数
二、PreDestroy()方法在destroy()方法执行执行以后执行。spa
被注解的Servlet生命周期 .net
须要注意的是,注解会多多少少地影响到服务器的启动速度。服务器在启动时候会遍历Web 应用的WEB-INF/classes下的全部class文件与WEB-INF/lib下的全部jar文件,以检查哪些类使用了注解。若是应用程序中没有使用任何注解,能够在Web.xml中设置的metadata-complete属性为true.(支持@PostConstruct和 @PreDestroy的服务器须要支持Servlet2.5规范。Tomcat5.x仅支持Servlet2.4规范。)code