服务器————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的先后顺序执行的

 

posted @ 2019-02-14 12:40  小菜鸡哒  阅读(145)  评论(0)    收藏  举报