码迷,mamicode.com
首页 > 其他好文 > 详细

过滤器

时间:2020-06-14 20:21:01      阅读:262      评论:0      收藏:0      [点我收藏+]

标签:-name   name   ini   自动登录   页面   包含   服务器   pattern   扩展   

1. 什么是过滤器Filter:

  可以过滤从客户端向服务器发送的请求.

2. 过滤器的使用:

  进行IP的过滤,脏话过滤,自动登录,响应压缩...

3. 使用过滤器: 

  编写一个类实现Filter接口:

4. 过滤器的生命周期:

  1. 服务器启动时创建并根据 web.xml 中声明的 filter 顺序依次实例化 filter。 

  2. init(FilterConfig) 来初始化过滤器

  3. 执行 : doFilter()方法执行(放行)     相当于servlet中的service()方法

  4. 服务器关闭时销毁       destroy()方法执行

实例化和初始化的操作只会在Filter启动时执行,而且只会执行一次。 

5. 过滤器链:

   过滤器链中的过滤器的执行的顺序与<filter-mapping>的配置顺序有关(过滤器链(执行顺序依url-parrent配置先后顺序))

   doFilter(request,response); -- 放行,放行到下一个过滤器中,如果没有下一个过滤器,到达目标资源.

6. chain.doFilter()方法 :

  下一个有过滤器就执行过滤器,没有就释放到当前浏览页面

  这个方法的请求和响应参数的类型是 ServletRequest 和 ServletResponse,也就是说,过滤器的使用并不依赖于具体的协议。 

7. Filter相关的配置:

<url-pattern>的配置:
* 完全路径匹配		:以 / 开始  /demo4/demo1.jsp
* 目录匹配			:以 / 开始 以 * 结束.  /*  /demo1/*
* 扩展名匹配			:不能以 / 开始 以 * 开始.  *.do  *.action

<servlet-name>的配置:根据Servlet的名称拦截Servlet.

<dispatcher>的配置:
* REQUEST	:默认值.
* FORWARD	:转发.
* INCLUDE	:包含.
* ERROR		:错误页面跳转.(全局错误页面)

 

过滤器

标签:-name   name   ini   自动登录   页面   包含   服务器   pattern   扩展   

原文地址:https://www.cnblogs.com/jingjiren/p/13044061.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!