zoukankan      html  css  js  c++  java
  • 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>
  • 相关阅读:
    微博那点事(2)
    微博那点事(1)
    Netty断线重连
    高效沟通技巧
    Latex 公式在线可视化编辑器
    RPC框架原理与实现
    Java 静态代理与动态代理
    程序员主管之路(1)
    MarkDown 常用语法教程
    Solr vs. Elasticsearch谁是开源搜索引擎王者
  • 原文地址:https://www.cnblogs.com/pogusanqian/p/12465832.html
Copyright © 2011-2022 走看看