zoukankan      html  css  js  c++  java
  • 12.秋招复习简单整理之过滤器有哪些作用和用法?以及过滤器和拦截器的区别?

    对于web应用来说,过滤器是一个驻留在服务器端的Web组件,它可以截取客户端和服务器之间的请求与响应信息,并对这些信息进行。当Web容器接收到一个对资源的请求时,它将判断是否有过滤器与这个资源关联,如果有,那么容器将这个请求交给过滤器处理。在过滤器中,你可以改变请求的内容,或者重新设置请求的报头信息,然后再将请求发送给目标资源。当目标资源对请求作出响应的时候,容器同样会将响应先转发给过滤器,在过滤器中你可以对响应的内容进行转换,然后再将响应发送给客户端。

    常见的过滤器用途有:对用户请求进行统一的认证、对用户的访问请求进行审核和记录、对用户发送的数据进行过滤或替换、转换图像格式、对响应内容进行压缩以减少传输量、对请求或响应进行加密处理、触发资源访问事件、对XML输出应用XSLT等。

    过滤器和拦截器的区别:

    1.拦截器基于Java的反射机制,而过滤器基于函数回调;

    2.拦截器不依赖于servlet容器,而过滤器依赖于servlet容器;

    3.拦截器只能对action请求起作用,过滤器可以对几乎所有的请求起作用;

    4.拦截器可以访问action上下文,值栈里的对象,而过滤器不能访问;

    5.在action的生命周期中,拦截器可以多次被调用,而过滤器只能在容器初始化的时候被调用一次;

    6.拦截器可以获取IOC容器中的各个bean,而过滤器不行,在拦截器里注入一个service,可以调用业务逻辑;

    7.拦截器需要在Spring配置文件中配置,过滤器只需要在web.xml中配置。

  • 相关阅读:
    VBA操作IE
    Eclipse中Git图标表示内容
    sqldeveloper更改语言设定
    VBA-FileToFileUpdate
    VBA-UTF-8文件的操作
    Null项目参与排序
    阿里云的学生机如何开放全部端口
    .net core3.1 webapi + vue + element-ui upload组件实现文件上传
    .net core控制台使用log4net
    vue2.x中使用三元表达式绑定class的时候遇到的坑
  • 原文地址:https://www.cnblogs.com/wenbinshen/p/11210482.html
Copyright © 2011-2022 走看看