服务器————Filter
基本概念:
filter是对客户端访问资源的过滤,符合条件放行,不符合条件不放行,并且可以对目标资源访问前后进行逻辑处理。

开发步骤:
步骤:
(1)编写一个过滤器的类实现filter接口
(2)实现接口中尚未实现的方法(着重实现doFilter方法)
(3)在web.xml中进行配置(主要是配置要对哪些资源进行过滤)

配web.xml文件

<url-pattern>是配置需要过滤资源的路径,url-pattern可以使用servlet-name替代,也可以混用。
url-pattern配置时:
1)完全匹配 /sertvle1
2)目录匹配 /aaa/bbb/* ----最多的
/user/*:访问前台的资源进入此过滤器
/admin/*:访问后台的资源时执行此过滤器
3)扩展名匹配 *.abc *.jsp
4)/* 拦截所有 jsp png .css 真的全拦截 (不建议使用)
*.action *.do 拦截以action do结尾的氢气 (肯定能使用) ERP
/ 拦截所有(不包括jsp) (包含 .js .png .css) (强烈建议使用) 前台 面向消费者
Filter的API详解:
filterConfig.getFilterName(); 获取web.xml中filter的名称<filter-name>QuickFilter</filter-name>
filterConfig.getIntParameter(); 获取当前filter的初始化参数
filterConfig.getServletContext(); 获取servletContext

doFilter(ServletRequest ,ServletResponse,FilterCha); 代表filter执行过滤的核心方法,如果某资源在已经被配置到这个filter进行过滤的话,那么每次访问这个资源都会执行doFilter方法
destory(); 代表是filter销毁方法 当filter对象销毁时执行该方法

Filter对象的生命周期:
Filter何时创建:服务器启动时就创建该filter对象
Filter何时销毁:服务器关闭时filter销毁
注:多个filter的执行顺序,根据web.xml中mapping的先后顺序执行的

浙公网安备 33010602011771号