执行顺序同项目配置,都是从映射开始找到对应的filter
filter中的url-pattern可以重复,表示同个资源需要经过不同的过滤器
也可用注解配置 @WebFilter("/") 多个filter时的执行顺序: 1.在web.xml文件中看各个filter的<filter-mapping></filter-mapping>的位置的先后顺序 2.使用注解时,需要在类名前加大写字母A、B、C...决定执行顺序 需要过滤页面的设置:在 <filter-mapping> <dispatcher> REQUEST:正常的请求(缺省值) ERROR: 错误页面跳转 FORWARD:请求转发 INCLUDE:请求包含 </dispacther> </filter-mapping> 四种。不写默认是对REQUEST过滤 常见三种过滤器: 1.请求编码过滤器: 2.登录验证过滤器: 将需要通过登录后才能显示的页面的资源名称,先在web.xml文件中的<init-param>设置 在filter中设置一个全局变量集合,在初始化方法init()中获得上述的名称,在doFilter()方法中进行校验 3.敏感字过滤器: 先有一个工具类有对敏感字进行过滤的方法;编写一个继承HttpServletRequestWrapper类的类,重写getParameter()方法,调用工具类中的方法对接收的值进行过滤;filter中,形参先强转成HttpServletxxx类型的,再作为参数传给new出来的刚刚继承自HttpServletRequestWrapper类的对象,并把它通过chain.doFilter()方法交给servlet;servlet中拿到filter的req对象用getParameter()方法进行过滤