Filter小结
Filter的三个方法:
- l void init(FilterConfig):在Tomcat启动时被调用;
- l void destroy():在Tomcat关闭时被调用;
- l void doFilter(ServletRequest,ServletResponse,FilterChain):每次有请求时都调用该方法;
FilterConfig类:与ServletConfig相似,用来获取Filter的初始化参数
- l ServletContext getServletContext():获取ServletContext的方法;
- l String getFilterName():获取Filter的配置名称;
- l String getInitParameter(String name):获取Filter的初始化配置,与<init-param>元素对应;
- l Enumeration getInitParameterNames():获取所有初始化参数的名称。
FilterChain类:
l void doFilter(ServletRequest,ServletResponse):放行!表示执行下一个过滤器,或者执行目标资源。可以在调用FilterChain的doFilter()方法的前后添加语句,在FilterChain的doFilter()方法之前的语句会在目标资源执行之前执行,在FilterChain的doFilter()方法之后的语句会在目标资源执行之后执行。
四各拦截方式:REQUEST、FORWARD、INCLUDE、ERROR,默认是REQUEST方式。
l REQUEST:拦截直接请求方式;
l FORWARD:拦截请求转发方式;
l INCLUDE:拦截请求包含方式;
l ERROR:拦截错误转发方式。