过滤器生命周期方法
- init:在服务器启动后,会创建Filter对象,然后调用init方法。只执行一次。用于加载资源
- doFilter:每一次请求被拦截资源时,会执行。执行多次
- destroy:在服务器关闭后,Filter对象被销毁。如果服务器是正常关闭,则会执行destroy方法。只执行一次。用于释放资源
import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;
//生命周期
@WebFilter("/index.jsp")
public class FilterDemo3 implements Filter {
public void destroy() {
System.out.println("服务器关闭时销毁");
}
public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws ServletException, IOException {
System.out.println("demo3...");
chain.doFilter(req, resp);
}
public void init(FilterConfig config) throws ServletException {
System.out.println("服务器开启时只启动一次");
}
}