• 021_SpringMVC中拦截器的作用?


    拦截器主要就是为了拦截使用controller直接访问web-inf目录下的动态资源文件。

    因为这样很可能造成我们页面加载不完全,例如用户名没有显示。

    intercept执行时机:处理器映射根据用户提,交的请求映射出了所要执行处理器类,并且也找到了要执行该处理器类的适配, 在处理器适配执行之前。

    拦截器我们是可以自定义的,但是他要继承HanderIntercept接口。
    拦截器有三个方法,preHandler()、postHandler()、afterComplaint()
    preHandler()只要返回的是true,afterComplaint()就一定要执行。
    afterComplaint()放在栈中,先进后出。
    只有preHandeler返回的是true,后面的处理器才能调用。

    单个拦截器示意图:

    多个拦截器示意图

     1  <mvc:interceptors>
     2         <mvc:interceptor>
     3             <!--拦截的请求URL-->
     4             <mvc:mapping path="/settings/**"/>
     5             <mvc:mapping path="/workbench/**"/>
     6             <!--指定不拦截的请求URL,优先级高-->
     7             <mvc:exclude-mapping path="/settings/qx/user/toLogin.do"/>
     8             <mvc:exclude-mapping path="/settings/qx/user/login.do"/>
     9        <!--指定拦截器的bean,这样被拦截的请求就会跳转的--> 
    10             <bean class="com.bjpowernode.crm.settings.web.interceptor.LoginInterceptor"/>
    11         </mvc:interceptor>
    12     </mvc:interceptors>
  • 相关阅读:
    ARM启动流程
    ARM机器码分析
    Ubuntu 14.04 dnw配置
    UNIX环境下的消息队列
    UNIX环境下的共享内存
    iptables详解
    iptables 相关名词的解释说明
    sphinx的安装配置和中文分词包coreseek
    linux防火墙iptables封IP,拒绝指定IP和网段的办法
    linux下注销其它用户或者tty的命令
  • 原文地址:https://www.cnblogs.com/pogusanqian/p/12465832.html
Copyright © 2020-2023  润新知