关于Filter的配置

配置代码:
<filter>
<display-name>OneFilter</display-name> 
<filter-name>OneFilter</filter-name>  <!-- Filter的名字 -->
<filter-class>my.filter.com.OneFilter</filter-class> <!-- Filter的路径 -->
</filter>
<filter-mapping>
<filter-name>OneFilter</filter-name>
<url-pattern>/*</url-pattern>  
<!-- 调用OneFilter的条件时使用请求转发的时候的forward方法,否则将不会调用此方法 -->
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
映射中的路径:<url-pattern>/*</url-pattern>
/*:对应管理的Servelt/html/jsp

注意:dispatcher的值:
a.REQUEST:当用户直接访问页面时,Web容器会调用过滤器,如果目标资源是通过RequestDispatcher的include()或者forward()方法访问,那么该过滤器就不会被调用.
b.INCLUDE:如果目标资源是通过RequestDispatcher的include()方法访问,那么该过滤器将被调用.除此以外的其他方式,过滤器都不会被调用.
c.FORWARD:如果目标资源是通过RequestDispatcher的forward()方法访问,那么该过滤器将被调用
那么该过滤器对应的请求方式,目标资源是通过RequestDispatcher
d.ERROR:如果目标资源是通过声明式异常处理机制调用时,那么过滤器会被调用.除此以外的其他方式过滤器都不会被调用.

原文地址:https://www.cnblogs.com/yufei121/p/5987592.html