java入门学习(十一)

来源:互联网 发布:php 权限管理 数据 编辑:程序博客网 时间:2024/06/16 16:08

拦截器,这个以后肯定会用到。开始配了半天没有成功,记录一下备查:

第一种最简单的方式:拦截所有的

<mvc:interceptors> <bean class="mybatistest.controller.CommonInterceptor" /> </mvc:interceptors>


第二种应该是第一种的扩展,可以配置多个拦截器,配置拦截的规则

    <mvc:interceptors>          <!-- 多个拦截器,顺序执行 -->          <mvc:interceptor>             <mvc:mapping path="/**" /><!-- 如果不配置或/**,将拦截所有的Controller -->             <bean class="mybatistest.controller.CommonInterceptor"></bean>          </mvc:interceptor>      </mvc:interceptors> 

这种开始一直没有成功,后来才发现,我的测试用Controller是/user/login,开始mapping配置为/*,只会拦截第一层的,后面改为/**就对了。

网上另外看到有这种,没试:

    <!--                 如果不定义mappingURL,则默认拦截所有对Controller的请求 ;                 可以使用正则表达式对url进行匹配,从而更细粒度的进行拦截(.*/entryOrJsonController\.do\?action=reg.*);       -->       <bean id="commonInterceptor" class="mybatistest.controller.CommonInterceptor">   <!--        <property name="mappingURL" value=".*/entryOrJsonController\.do\?action=reg.*"/>  -->       </bean>           <!-- 处理在类级别上的@RequestMapping注解-->       <bean           class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" >           <property name="interceptors">              <!-- 多个拦截器,顺序执行 -->              <list>                 <ref bean="commonInterceptor"/>              </list>           </property>       </bean>   


这篇文章有详细内容可参考:http://jinnianshilongnian.iteye.com/blog/1670856

0 0
原创粉丝点击