zoukankan      html  css  js  c++  java
  • 拦截器

    什么是拦截器

    • 拦截器是指通过统一拦截从浏览器发往服务器的请求来完成功能的增强
    • 使用场景:解决请求的共性问题(如:乱码问题、权限验证问题等)

    拦截器的基本工作原理

    拦截器的实现

    • 编写拦截器类实现HandlerInterceptor接口
    • 将拦截器注册进SpringMVC框架中
    • 配置拦截器的拦截规则

    拦截器的方法介绍

    • preHandle方法,在请求被处理之前进行调用(返回值表示是否需要将当前的请求拦截下来:false:请求将被终止;true:请求将会继续运行。Object arg2 表示的是被拦截的请求的目标)
    • postHandle方法,在请求被处理之后进行调用(可以通过ModelAndView参数来改变显示的视图,或修改发往视图的方法)
    • afterCompletion方法,在请求结束之后才进行调用(主要用于资源销毁)

    多拦截器协同工作

    拦截器的使用场景

    • 使用原则:处理所有请求的共同问题
    • 解决乱码问题
    • 解决权限验证问题

    拦截器和过滤器的区别

    • 过滤器Filter依赖于Serrvlet容器,基于回调函数,过滤范围大
    • 拦截器Interceptor依赖于框架容器,基于反射机制,只过滤请求
    • 拦截器可以处理Web应用中请求的一些通用性问题
    • 共性问题在拦截器中处理,可以减少重复代码,便于维护
  • 相关阅读:
    minicom的安装和tftp的安装
    主机和VMware中的Linux如实现共享文件夹
    gcc调试 学习1
    ARM1
    javaweb学习方案1
    java环境变量和tomcat环境变量配置
    逻辑代数
    在写一点关于MySQL的知识,感觉自己mmd
    Ural 1519 Formula 1 (DP)
    UVaLive 3126 Taxi Cab Scheme (最小路径覆盖)
  • 原文地址:https://www.cnblogs.com/yulu612/p/7309414.html
Copyright © 2011-2022 走看看