美文网首页
JavaWeb开发之Filter过滤器

JavaWeb开发之Filter过滤器

作者: 小丸子的呆地 | 来源:发表于2021-07-16 06:34 被阅读0次

什么是过滤器

Servlet规范当中定义的一种特殊的组件,可以拦截Servlet容器的调用过程并进行相应的处理。某个过滤器只有一个实例,即单例模式。

如何写一个过滤器

  • step1:写一个Java类,实现Filter接口
  • step2:在doFilter方法里面,编写处理逻辑
  • step3:web.xml中配置过滤器
    注意事项:Filter的xml配置在Servlet的xml配置前!
<filter>
    <filter-name>filter1</filter-name>
    <filter-class>web.CommentFilter1</filter-class>
    <init-param><!-- 过滤器的初始化参数 详见14.5-->
        <param-name>illegalStr</param-name>
        <param-value>cat</param-value>
    </init-param>
</filter>
<filter-mapping>
    <filter-name>filter1</filter-name>
    <url-pattern>/comment</url-pattern>
</filter-mapping>
<servlet>
    <servlet-name>CommentServlet</servlet-name>
    <servlet-class>web.CommentServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>CommentServlet</servlet-name>
    <url-pattern>/comment</url-pattern>
</servlet-mapping>

过滤器的优先级

如果有多个过滤器都满足过滤的条件,则容器会依据<filter-mapping>的先后顺序来调用过滤器。所以filter的顺序是在web.xml中定义的<filter>标签的顺序。

初始化参数

step1:使用<init-param>配置初始化参数
step2:调用FilterConfig.getInitParameter(String parameter);返回一个字符串

优点

1)可以实现代码的“可插拔性”(增加或减少某个模块,不会影响程序的正常运行)。
2)可以将多个组件相同的处理逻辑集中写在过滤器里面,方便代码的维护。如:四个Web组件都需要session验证,把验证写在一个过滤器即可。配置中写“/*”,拦截所有请求。

相关文章

  • JavaWeb三大组件之过滤器(Filter)

    title: JavaWeb三大组件之过滤器(Filter)tags: JavaWeb 过滤器categories...

  • Filter&Listener

    Filter过滤器 概念 Filter表示过滤器,是JavaWeb的三大组件之一,Servlet、Filter、L...

  • JavaWeb--Filter

    Filter:过滤器,是JavaWeb三大组件(Servlet、Filter、Listener)之一过滤器可以把对...

  • Javaweb组件--Filter

    今天讲的是Javaweb的三大组件之:Filter Filter ,过滤器,主要是对web服务器管理的所有web资...

  • Filter

    过滤器(Filter) Servlet/Filter/Listener统称为JavaWeb的三大组件.其中Filt...

  • JavaWeb开发之Filter过滤器

    什么是过滤器 Servlet规范当中定义的一种特殊的组件,可以拦截Servlet容器的调用过程并进行相应的处理。某...

  • Javaweb-Filter-1-快速入门

    Filter快速入门 开始学习Filter这个知识点,单词是过滤器和拦截器的作用。Filter是Javaweb中的...

  • JavaWeb(五) - Filter 和 Listener

    Filter 过滤器 基本概念 Filter 本意为”过滤“的含义,是 JavaWeb 的三大组件之一,三大组件为...

  • JavaWeb之Filter过滤器

    概念 1、JavaWeb 的一个重要组件,可以对发送到 Servlet 的请求进行拦截,并对响应也进行拦截 2、F...

  • JavaWeb之Filter过滤器

    什么是过滤器 Filter 的基本功能是对 Servlet 容器调用 Servlet 的过程进行拦截,从而在 Se...

网友评论

      本文标题:JavaWeb开发之Filter过滤器

      本文链接:https://www.haomeiwen.com/subject/yqikpltx.html