zoukankan      html  css  js  c++  java
  • Filter与Servlet的区别和联系

     

     


     

    Filter

    Servlet

    接口

    实现Filter接口

    实现Servlet接口

    使用步骤

    1、创建类,继承接口

    2、实现方法

    init()

    doFilter()

    destroy()

     


    3、配置WEB-INF/web.xml

    1、创建类,继承接口

    2、实现方法

    init()

    service()

    destroy()

    getServletConfig()

    getServletInfo()

    3、配置WEB-INF/web.xml

    初始化时间

    Servlet容器启动之后即初始化

    Servlet类被调用之后初始化、先于Filter调用。

    初始化可以在容器启动后被调用但需要配置。

    调用顺序

    1. 按照web.xml中的映射配置顺序按照配置条件从后向前调用

    2. 层次调用doFilter()方法中FilterChain.doFilter()之前的内容

    3. 调用Servlet中的service()方法

    4. service方法执行完毕后,层次调用doFilter()中FilterChain.doFilter()之后的方法,顺序与之前的相反

     

    按照web.xml中的映射配置顺序按照配置条件从后向前调用第一个满足条件的Servlet,调用之前事先执行满足条件的Filter,不存在层次调用Servlet问题

    销毁

    服务器停止后销毁,晚于Servlet销毁之后

    服务器停止后销毁

    作用

    1. 在HttpServletRequest到达Servlet之前,拦截客户的HttpServletRequest。

    2. 根据需要检查HttpServletRequest,也可以修改HttpServletRequest头和数据。

    3. 在HttpServletResponse到达客户端之前,拦截HttpServletResponse。

    4. 根据需要检查HttpServletResponse,也可以修改HttpServletResponse头和数据。

    主要是处理客户端的请求并将其结果发送到客户端。



  • 相关阅读:
    Nginx使用
    MySQL 分区
    php PDO预处理
    php
    php
    linux 下编译安装MySQL
    php 工厂模式
    MySQL 权限管理
    hadoop集群安装20181016(20111130:前面太忙,没有写完,后面继续)
    JavaScript函数参数翻转——连接多个数组——zip、zipwith
  • 原文地址:https://www.cnblogs.com/zs234/p/3233359.html
Copyright © 2011-2022 走看看