Filter快速入门、Filter执行流程、Filter使用细节、Listener概念、分类、ServletContextListener使用
创始人
2024-01-20 05:34:20
0

文章目录

  • Filter
    • Filter快速入门
    • Filter 执行流程
    • Filter使用细节
  • Listener
    • ServletContextListener 使用

Filter

  • 概念:Filter表示过滤器,是 JavaWeb三大组件(Servlet、Filter、Listener)之一。
  • 过滤器可以把对资源的请求拦截下来,从而实现一些特殊的功能。
  • 过滤器一般完成一些通用的操作,比如:权限控制、统一编码处理、敏感字符处理等等…
    在这里插入图片描述

Filter快速入门

  • 定义类,实现 Filter 接口,并重写其所有的方法
    在这里插入图片描述
    在这里插入图片描述

  • 配置Filter拦截资源的路径:在类定义@WebFilter 注解
    在这里插入图片描述
    在这里插入图片描述

  • 在 doFilter方法中输出一句话,并放行。
    在这里插入图片描述
    在这里插入图片描述

Filter 执行流程

在这里插入图片描述

  • 放行后访问对应资源,资源完成访问后,还会回到 Filter 中吗?
  • 如果回到 Filter 中,是重头执行还是执行放行后的逻辑呢?
    • 放行后逻辑
      在这里插入图片描述

在这里插入图片描述

  • 我在doFilter方法中写了两个输出语句,对应的位置分别在放行前和放行后
    在这里插入图片描述

  • 在 index.jsp中也写了一个输出语句

  • 分别在输出语句中表明输出的顺序
    在这里插入图片描述

  • 运行 tomact 并访问对应的路径
    在这里插入图片描述

  • 控制台输出

Filter使用细节

  • Filter 拦截路径配置

    • Filter 可以根据需求,配置不同的拦截资源路径
      在这里插入图片描述

      • 拦截具体的资源:/index.jsp:只有访问 index.jsp时才会被拦截

      • 目录拦截:/user/*:访问/user下的所有资源,都会被拦截

      • 后缀名拦截:*.jsp:访问后缀名为jsp的资源,都会被拦截

      • 拦截所有:/*:访问所有资源,都会被拦截

    • 下图为拦截 index.jsp的代码
      在这里插入图片描述

    • 当我访问 index.jsp时,我对应的语句会输出在控制台上
      在这里插入图片描述

    • 当我去 访问 hello.jsp时,控制台只会输出hello.jsp文件资源中的输出语句
      在这里插入图片描述

    • 如上证明 拦截路径配置的第一条结论

  • 过滤器链

    • 一个Web应用,可以配置多个过滤器,这多个过滤器称为过滤器链
      在这里插入图片描述

    • 注解配置的 Filter,优先级按照过滤器类名(字符串)的自然排序

    • 如下,我配置了两个过滤器,分别重写里边的 doFilter()方法,在两个过滤器 放行前和放行后分别设置了输出语句,拦截路径都配置为 index.jsp,这样就形成了一条过滤器链,通过分析每条输出语句输出的顺序,我提前给他们标了相应的序号
      在这里插入图片描述
      呵呵
      在这里插入图片描述

  • 运行tomact并访问对应路径验证是否正确
    在这里插入图片描述

Listener

  • 概念:Listener表示监听器,是 JavaWeb三大组件(Servlet、Filter、Listener)之一。
  • 监听器可以监听就是在application,session,request三个对象创建、销毁或往其中添加修改删除属性时自动执行代码的功能组件
  • Listener分类:JavaWeb中提供了8个监听器
    在这里插入图片描述

ServletContextListener 使用

  • 定义类,实现 ServletContextListener接口
    在这里插入图片描述

  • 在类中添加 @WebListener 注解

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...