zoukankan      html  css  js  c++  java
  • 三大组件Servlet、Filter、Listener

    JavaWeb三大组件指的是:Servlet、Filter、Listener,这三个组件在JavaWeb开发中分别提供不同的功能

    Servlet

    Servlet是用来处理客户端请求的动态资源,也就是当我们在浏览器中键入一个地址回车跳转后,请求就会被发送到对应的Servlet上进行处理。

    作用:

    • 接收请求数据
    • 处理请求
    • 完成响应

    servlet的声明周期:

    Filter

    filter与servlet在很多的方面极其相似,但是也有不同,例如filter和servlet一样都又三个生命周期方法,同时他们在web.xml中的配置文件也是差不多的、 但是servlet主要负责处理请求,而filter主要负责拦截请求,和放行。

    filter四种拦截方式

    REQUEST:直接访问目标资源时执行过滤器。包括:在地址栏中直接访问、表单提交、超链接、重定向,只要在地址栏中可以看到目标资源的路径,就是REQUEST;

    FORWARD:转发访问执行过滤器。包括RequestDispatcher#forward()方法、< jsp:forward>标签都是转发访问;

    INCLUDE:包含访问执行过滤器。包括RequestDispatcher#include()方法、< jsp:include>标签都是包含访问;

    ERROR:当目标资源在web.xml中配置为< error-page>中时,并且真的出现了异常,转发到目标资源时,会执行过滤器。

    url-mapping的写法

    匹配规则有三种:

    精确匹配 —— 如/foo.htm,只会匹配foo.htm这个URL

    路径匹配 —— 如/foo/*,会匹配以foo为前缀的URL

    后缀匹配 —— 如*.htm,会匹配所有以.htm为后缀的URL

    < url-pattern>的其他写法,如/foo/ ,/.htm ,/foo 都是不对的。

    执行filter的顺序

    如果有多个过滤器都匹配该请求,顺序决定于web.xml filter-mapping的顺序,在前面的先执行,后面的后执行

    Listener

    介绍

    监听器(Listener)的作用

    监听某一个事件的发生,状态的改变等。

    原理

    javaWeb 中的 8 个 Listener

    监听 servlet 三个作用域的创建与销毁

    此类监听器用来监听 servlet 三大作用域的创建和销毁:

    ---- ---- ----

    参考文章:https://www.cnblogs.com/hanlk/p/14225038.html

    冰冻三尺,并非一日之寒
  • 相关阅读:
    Guava布隆过滤器实战应用
    结合阿里代码规范约定+源码剖析属性拷贝性能安全问题
    comparatorChain实现对Bean多字段排序
    python ibm_db模块的使用
    Linux6.5编译安装mysql5.7.19
    3.1 创建预配置管理资料数据库
    redis环境搭建及一主二从三哨兵模式配置
    一次生产环境搭建11g RAC的记录
    绑定变量
    oracle 10g 搭建备库以及一次DG GAP的处理情况
  • 原文地址:https://www.cnblogs.com/qjwcf/p/14544768.html
Copyright © 2011-2022 走看看