Spring項目中使用到了攔截器,但是配置完成之后死活不起作用。
----------------------------------------------------------------------------------------------------------------
網上有的說是因為在spring-mvc.xml文件中配置了 <mvc:annotation-driven/>此標簽,導致攔截器不起作用,因為在這個標簽中默認有一個攔截器《這句會其實它已經注冊了一個DefaultAnnotationHandlerMapping ,而后面你自己注冊的優先級沒它內部的高,所以一直都不會調用你注冊的攔截器。》於是我按照此方法試了一下,把這個標簽去掉,但是很遺憾報錯了。報錯說:no mapping,大概就是說找不到映射的路徑。
----------------------------------------------------------------------------------------------------------------
既然<mvc:annotation-driven/>此標簽中有默認的攔截器,那么我就在
<!--攔截器--> <mvc:interceptors> <bean class="com.pdd.interceptor.PddInterceptor"/> 在這里把攔截器的全類名聲明好,結果問題解決了 <mvc:interceptor> <!--暫時默認攔截所有請求,到時根據需求改變--> <mvc:mapping path="/*"/> <bean class="com.pdd.interceptor.PddInterceptor"/> </mvc:interceptor> </mvc:interceptors>