Servlet四种过滤器的工作方式

1、request过滤器
  这种过滤器的工作方式比较简单,大家也经常遇到,如下所示:以下是web.xml文件配置方式:
     <filter>
    <filter-name>myFilter</filter-name>
    <filter-class>packagename.MyFilterName</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>myFilter</filter>
    <servlet-name> 目标资源</servlet-name>
    </filter-mapping>
    <filter>
2 request过滤器:只对直接请求起作用,
对转发到该目标资源的请求将忽略不处理。
    <filter-name>myFilter</filter-name>
    <filter-class>packagename.MyFilterName</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>myFilter</filter>
    <servlet-name> 目标资源1</servlet-name>
    <dispatcher>REQUEST</dispatcher>
    </filter-mapping>
    <filter-mapping>
    <filter-name>myFilter</filter>
    <servlet-name> 目标资源2</servlet-name>
    <dispatcher>REQUEST</dispatcher>
    </filter-mapping>
3:目标一:直接请求起作用,目标二:转发起作用,直接请求过滤器不起作用
   <filter-name>myFilter</filter-name>
   <filter-class>packagename.MyFilterName</filter-class>
   </filter>
   <filter-mapping>
   <filter-name>myFilter</filter>
   <servlet-name> 目标资源1</servlet-name>
   <dispatcher>REQUEST</dispatcher>
   </filter-mapping>
   <filter-mapping>
   <filter-name>myFilter</filter>
   <servlet-name> 目标资源2</servlet-name>
   <dispatcher>FORWARD</dispatcher>
   </filter-mapping>
4:错误页面过滤
   <filter-name>myFilter</filter-name>
   <filter-class>packagename.MyFilterName</filter-class>
   </filter>
   <filter-mapping>
   <filter-name>myFilter</filter>
   <servlet-name> /error.jsp</servlet-name>
   <dispatcher>ERROR</dispatcher>
   </filter-mapping>
   <error-page>
   <error-code>404</error-code>
   <location>/error.jsp</location>
   </error-page>

猜你喜欢

转载自2008-zhangfan.iteye.com/blog/1118495