使用:
- 创建一个类实现javax.servlet.Filter接口,并重写接口中所有的方法;
- 在web.xml配置所需要拦截的请求。
过程说明:
1>在应用启动的时候就进行装载Filter类(与Servlet的load-on-startup配置效果相同)
2>容器创建好Filter对象实例后,调用init()方法。接着被Web容器保存进应用级的集合容器中去了等待着,用户访问资源。
3>当用户访问的资源正好被Filter的url-pattern拦截时,容器会取出Filter类调用doFilter方法,下次或多次访问被拦截的资源时,Web容器会直接取出指定Filter对象实例调用doFilter方法(Filter对象常驻留Web容器了)
4>当应用服务被停止或重新装载了,则会执行Filter的destroy方法,Filter对象销毁。
注意:init方法与destroy方法只会直接一次。
参考: