jsp filter 过滤器功能与简单用法示例

 更新时间:2020-01-15 15:59:32   作者:佚名   我要评论(0)

本文实例讲述了jsp filter 过滤器功能与简单用法。分享给大家供大家参考,具体如下:
过滤器的作用是什么?
过滤器可以动态地拦截请求和响应,以变换或使用包含在

本文实例讲述了jsp filter 过滤器功能与简单用法。分享给大家供大家参考,具体如下:

过滤器的作用是什么?

过滤器可以动态地拦截请求和响应,以变换或使用包含在请求或响应中的信息。

可以将一个或多个过滤器附加到一个 Servlet 或一组 Servlet。过滤器也可以附加到 JavaServer Pages (JSP) 文件和 HTML 页面。

  • 在客户端的请求访问后端资源之前,拦截这些请求。
  • 在服务器的响应发送回客户端之前,处理这些响应。

过滤器的实现要实现 java.servlet.Filter 这个接口类

一个简易的filter 类示例

package demo;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class DemoFilter implements Filter
{
  private String name=null;
  @Override
  public void destroy()
  {
  }
  @Override
  public void doFilter(ServletRequest arg0, ServletResponse arg1,
      FilterChain arg2) throws IOException, ServletException
  {
    arg0.setAttribute("name", "init text string : " + name);
    arg2.doFilter(arg0, arg1);
  }
  @Override
  public void init(FilterConfig arg0) throws ServletException
  {
    //获得web.xml中filter init-param 中的配置
    name = arg0.getInitParameter("name");
  }
}

仅仅只是写好了这个过滤器类还不行。我们要在web.xml中声明哪些请求需要过滤器的调用

web.xml

  <!--声明一个filter-->
  <filter>
  <!--filter的名称-->
    <filter-name>demoFilter</filter-name>
  <!--filter 类-->
    <filter-class>demo.DemoFilter</filter-class>
  <!--该filter类需要的配置-->
    <init-param>
      <param-name>name</param-name>
      <param-value>my name is tanyong</param-value>
    </init-param>
  </filter>

  <!--为url-pattern 中相匹配的url链接 映射至相应的filter filter 通过 filter-name来识别-->
  <filter-mapping>
    <filter-name>demoFilter</filter-name>
    <!--匹配映射规则,我这里用的是所有请求都要在demoFilter filter 里面去兜晃一圈-->
    <url-pattern>/*</url-pattern>
  </filter-mapping>

希望本文所述对大家jsp程序设计有所帮助。

您可能感兴趣的文章:

  • 通过过滤器(Filter)解决JSP的Post和Request中文乱码问题
  • JSP过滤器Filter配置过滤类型全部汇总
  • JSP 开发中过滤器filter设置编码格式的实现方法
  • JSP使用Servlet过滤器进行身份验证的方法
  • JSP过滤器防止Xss漏洞的实现方法(分享)
  • JSP使用过滤器防止SQL注入的简单实现
  • jsp实现登录验证的过滤器
  • jsp中过滤器选择过滤器的写法详解
  • 详解JSP中使用过滤器进行内容编码的解决办法
  • servlet+jsp实现过滤器 防止用户未登录访问
  • JSP使用过滤器防止Xss漏洞

相关文章

  • jsp filter 过滤器功能与简单用法示例

    jsp filter 过滤器功能与简单用法示例

    本文实例讲述了jsp filter 过滤器功能与简单用法。分享给大家供大家参考,具体如下: 过滤器的作用是什么&#63; 过滤器可以动态地拦截请求和响应,以变换或使用包含在
    2020-01-15
  • jsp 实现的简易mvc模式示例

    jsp 实现的简易mvc模式示例

    本文实例讲述了jsp 实现的简易mvc模式。分享给大家供大家参考,具体如下: jsp : java servlet page MVC全名是Model View Controller,是模型(model)-视图(view)-
    2020-01-15
  • 解决正则表示式匹配($regex)引起的一次mongo数据库cpu占用率高的问题

    解决正则表示式匹配($regex)引起的一次mongo数据库cpu占用率高的问题

    某一天,监控到mongo数据库cpu使用率高了很多,查了一下,发现是下面这种语句引起的: db.example_collection.find({ "idField" : { "$regex" : "1234567890123
    2020-01-15
  • 爱站因侵权问题 被迫关闭

    爱站因侵权问题 被迫关闭

    2020年1月9日知名站长工具爱站网出现了“网站维护中,请稍后访问”,初始很多网友都以为是爱站网临时升级系统导致的,截止今天(2020年1月12日)还没有恢复,目前爱站网官方
    2020-01-13
  • es6 for循环中let和var区别详解

    es6 for循环中let和var区别详解

    let和var区别: for(var i=0;i<5;i++){ setTimeout(()=>{ console.log(i);//5个5 },100) } console.log(i);//5 console.log('=============') for(let
    2020-01-12
  • python利用JMeter测试Tornado的多线程

    python利用JMeter测试Tornado的多线程

    JMeter的简介 &#8195;&#8195;JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。
    2020-01-12
  • Java 二分法检索算法代码实现详解

    Java 二分法检索算法代码实现详解

    一,二分法检索算法介绍 二分法检索(binary search)又称折半检索,二分法检索的基本思想是设字典中的元素从小到大有序地存放在数组(array)中。是最常用的搜索
    2020-01-12
  • Linux下PHP+Apache的26个必知的安全设置

    Linux下PHP+Apache的26个必知的安全设置

    PHP是一种开源服务器端脚本语言,应用很广泛。Apache web服务器提供了这种便利:通过HTTP或HTTPS协议,访问文件和内容。配置不当的服务器端脚本语言会带来各种各样
    2020-01-12
  • tensorflow的计算图总结

    tensorflow的计算图总结

    计算图 在 TensorFlow 中用计算图来表示计算任务。 计算图,是一种有向图,用来定义计算的结构,实际上就是一系列的函数的组合。 用图的方式,用户通过用一些简单
    2020-01-12
  • Python3.x+迅雷x 自动下载高分电影的实现方法

    Python3.x+迅雷x 自动下载高分电影的实现方法

    快要过年了,大家都在忙些什么呢?一到年底公司各种抢票,备年货,被这过年的气氛一烘,都归心似箭,哪还有心思上班啊。归心似箭=产出低下=一行代码十个错=无聊。于
    2020-01-12

最新评论