当前位置: 首页 > news >正文

Web 器学习笔记(基础)

Filter 过滤器

概念:表示过滤器,是 JavaWeb 三大组件(Servlet、Filter、Listener)之一

作用:顾名思义可以过滤资源的请求,并实现特殊的需求

Filter 接口及它核心的 doFilter() 方法(执行前就是放行前逻辑)

void doFilter(ServletRequest, ServletResponse, FilterChain)

解析:FilterChain 接口是管理过滤器的“链式结构”,比如「禁止浏览器缓存」「实现自动登录」「编码过滤器」「敏感词过滤器」「压缩资源过滤器」「HTML转义过滤器」「缓存数据」…

过滤器其实也是责任链模式的一种实现,FilterChain层层往下执行,直到最后没有过滤器,就到了「目标资源」)

注意:注解配置的 Filter,优先级按照过滤器类名(字符串)的自然排序,比如:A~Z、0~9

 

 

 Listener 监听器

实际上就是实现特定接口的普通Java程序。它专门监听Java对象的方法调用/属性改变,并可以作出反应

回到 Servlet 层面上,我们更多的监听的是「Session」「Request」「ServletContext」「Application」这些对象的创建、销毁及属性内的变化(之后执行相应代码的功能组件)

针对监听上面的几个对象,我们可以做出一些小例子,比如说「统计网站的在线人数」「自动踢人」「定时清除Session的值」

作用总结:A发生了变化,而B需要依赖A发生的变化做出处理

Listener 分类:JavaWeb 提供了八个监听器
监听器分类监听器名称作用
ServletContext监听ServletContextListener

用于对 ServletContext 对象进行监听

(创建、销毁)

ServletContextAttributeListener

对 ServletContext 对象中属性的监听

(增删改属性)

Session监听HttpSessionListener

对 Session 对象的整体状态的监听

(创建、销毁)

HttpSessionAttributeListener

对 Session 对象中的属性监听

(增删改属性)

HttpSessionBindingListener监听对象于 Session 的绑定和解除
HttpSessionActivationListener对 Session 数据的钝化和活化的监听
Request监听ServletRequestListener

对 Request 对象进行监听

(创建、销毁)

ServletRequestAttributeListener

对 Request 对象中属性的监听

(增删改属性)

监听使用例子:ServletContextListener

  1. 定义实现了 ServletContextListener 接口的类
  2. 在实现类上添加 @WebListener 注解
http://www.lryc.cn/news/174123.html

相关文章:

  • uniapp中vue3使用uni.createSelectorQuery().in(this)报错
  • k8s-部署
  • Arduino驱动MMA7260三轴加速度传感器(惯性测量传感器篇)
  • 奇舞周刊第507期:通过 View Transition API 在状态之间添加丰富的过渡动画
  • 如何通过技术变现
  • 高效查询大量快递信息,轻松掌握技巧
  • iperf3: error - unable to connect to server: No route to host 但嵌入式Linux设备
  • OpenCV自学笔记十七:傅里叶变换
  • uniapp如何判断是哪个(微信/APP)平台
  • 网络安全——(黑客)自学
  • 一拖三快充线(USB-C转三充)的解决方案--LDR6020P
  • 2024年考研教育专业的教育综合考试大纲、样题和往年真题
  • 算法之斐波那契数列
  • 关于Pandas数据分析
  • Go 并发可视化解释 - sync.Mute
  • 十几张高清世界地图
  • Python 逢七拍手游戏
  • Windows安装Mysql--免安装版
  • TypeScript中常见的操作符运算符总结
  • 什么是泛型约束?
  • 代码随想录算法训练营 动态规划part11
  • 新概念英语(第二册)复习——Lesson 16 - Lesson20
  • [题] n-皇后问题 #深搜 #DFS
  • 十小时开源了一个加密算法仓库,功能强大,后端开发人员狂喜!
  • 标准化套利的使用
  • 【MySQL数据库事务操作、主从复制及Redis数据库读写分离、主从同步的实现机制】
  • 十五、红外遥控器
  • diot函数解析
  • Python函数绘图与高等代数互融实例(一):正弦函数与余弦函数
  • Python 判断回文数